如何将特定的Python版本设置为终端中的默认版本,但要保留使用另一个软件包的可能性(例如Conda)



为了安装外部软件包,我必须安装conda并激活环境以使用该外部软件包。但是,现在Python的Conda版本是默认版本:

$ which python
/Users/mymac/miniconda3/bin/python
$ python
Python 3.7.3 (default, Mar 27 2019, 16:54:48) 
[Clang 4.0.1 (tags/RELEASE_401/final)] :: Anaconda, Inc. on darwin

在我的.bash_profile中,两个版本似乎是共存的:

export PS1="[33[36m]u[33[m]@[33[32m]h:[33[33;1m]w[33[m]$ "
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad
alias ls='ls -GFh'
# Homebrew
export PATH=/usr/local/bin:$PATH
# Setting PATH for Python 3.7
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.7/bin:${PATH}"
export PATH
export PATH="$HOME/.cargo/bin:$PATH"
export LC_ALL=en_US.UTF-8
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/Users/mymac/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/Users/mymac/miniconda3/etc/profile.d/conda.sh" ]; then
        . "/Users/mymac/miniconda3/etc/profile.d/conda.sh"
    else
        export PATH="/Users/mymac/miniconda3/bin:$PATH"
    fi  
fi
unset __conda_setup
# <<< conda initialize <<<

然后在我的.bashrc

中添加以下行
alias python='/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7

然后我重述了上一个命令

$ which python
/Users/mymac/miniconda3/bin/python
$ python
Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 16:52:21) 
[Clang 6.0 (clang-600.0.57)] on darwin

该版本似乎已经改变了,但源仍然相同。

为了将非Conda Python版本作为终端中的默认版本,确实必须执行哪些精确命令,但要保留使用该特定软件包的Conda版本(通过键入source activate thepackage(

首先,删除别名命令,只有在忘记创建别名时,它才会在以后引起您的问题。然后,添加conda配置选项,以便默认情况下不激活基本环境。在您的终端中,类型:

conda config --set auto_activate_base false

这应该将系统恢复为您的路径上的第一个。现在,当您想使用Conda环境时,只需键入

conda activate env-name

您应该可以访问该环境的Python。完成后,打字

conda deactivate

将使您回到原始状态。如果您激活了多个环境,则可能需要几次运行conda deactivate

最新更新