如何在Ubuntu中的(通用)pyenv python和系统python之间来回切换?
How to switch back and forth between (general) pyenv python and system python in Ubuntu?
我曾经在 Ubuntu 中使用 anaconda3
安装的 python。但出于某种原因,我还需要创建一个 pyenv
并将其推广给所有用户。对于 运行 python 脚本,我了解到与 anaconda3
不同的是,我必须使用所有需要的 python 包构建 pyenv
,因为我收到错误消息说模块没有定义。因此,在安装 pyenv
后,我在 (general) pyenv
shell 中使用 pip install <package_name>
安装了所需的模块。现在我可以 运行 脚本了。有没有办法在anaconda3
系统python和pyenv
python之间来回切换?
(仅根据提示 (general) username@username-Rev-1-0:~$, 我知道我现在在 pyenv
。 )
这里是 .bashrc
文件的相关部分:
# added by Anaconda3 4.3.0 installer
export PATH="/home/username/anaconda3/bin:$PATH"
# Load pyenv automatically by adding
# the following to ~/.bash_profile:
export PATH="/home/username/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
尝试将其添加到您的 .bashrc。
export ANACONDA_HOME="/home/username/anaconda3"
alias my_anaconda="unset PYENV_HOME && export PATH=$ANACONDA_HOME/bin:$PATH"
# Load pyenv automatically by adding
# the following to ~/.bash_profile:
export PYENV_HOME="/home/username/.pyenv/"
alias my_pyenv='unset ANACONDA_HOME && export PATH=$PYENV_HOME/bin:$PATH && eval "$(pyenv init -)" && eval "$(pyenv virtualenv-init -)"'
在 shell 上,尝试:
$my_anaconda
$my_pyenv
灵感来自答案,谢谢。我在 MacOs 上使用了类似的方法:
# in my ~/.bash_profile
# Anaconda app is installed and initiated at the terminal start
# path to Anaconda: /Users/<USER>/opt/anaconda3/
switch_pyenv(){
conda deactivate
conda deactivate # in case you're not in base env
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
}
switch_conda(){
conda activate base
export PATH="/Users/<USER>/opt/anaconda3/bin:$PATH"
}
# quick check which python, pip
w(){
which python
which pip
py -V
}
当我切换到一个环境时,我检查 'where am i' 和 shorthand w
。
我曾经在 Ubuntu 中使用 anaconda3
安装的 python。但出于某种原因,我还需要创建一个 pyenv
并将其推广给所有用户。对于 运行 python 脚本,我了解到与 anaconda3
不同的是,我必须使用所有需要的 python 包构建 pyenv
,因为我收到错误消息说模块没有定义。因此,在安装 pyenv
后,我在 (general) pyenv
shell 中使用 pip install <package_name>
安装了所需的模块。现在我可以 运行 脚本了。有没有办法在anaconda3
系统python和pyenv
python之间来回切换?
(仅根据提示 (general) username@username-Rev-1-0:~$, 我知道我现在在 pyenv
。 )
这里是 .bashrc
文件的相关部分:
# added by Anaconda3 4.3.0 installer
export PATH="/home/username/anaconda3/bin:$PATH"
# Load pyenv automatically by adding
# the following to ~/.bash_profile:
export PATH="/home/username/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
尝试将其添加到您的 .bashrc。
export ANACONDA_HOME="/home/username/anaconda3"
alias my_anaconda="unset PYENV_HOME && export PATH=$ANACONDA_HOME/bin:$PATH"
# Load pyenv automatically by adding
# the following to ~/.bash_profile:
export PYENV_HOME="/home/username/.pyenv/"
alias my_pyenv='unset ANACONDA_HOME && export PATH=$PYENV_HOME/bin:$PATH && eval "$(pyenv init -)" && eval "$(pyenv virtualenv-init -)"'
在 shell 上,尝试:
$my_anaconda
$my_pyenv
灵感来自答案,谢谢。我在 MacOs 上使用了类似的方法:
# in my ~/.bash_profile
# Anaconda app is installed and initiated at the terminal start
# path to Anaconda: /Users/<USER>/opt/anaconda3/
switch_pyenv(){
conda deactivate
conda deactivate # in case you're not in base env
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
}
switch_conda(){
conda activate base
export PATH="/Users/<USER>/opt/anaconda3/bin:$PATH"
}
# quick check which python, pip
w(){
which python
which pip
py -V
}
当我切换到一个环境时,我检查 'where am i' 和 shorthand w
。