如果这在别处很容易找到,我表示最诚挚的歉意,但尽管我发现了一些关于pyenv和Anaconda解释的帖子,但没有一篇专门针对这个问题。然而,我经常是个白痴。
在MacOSX(Mojave10.14.6)上,我通过自制软件安装了pyenv
brew安装pyenv
我很高兴地安装了Python版本,并使用
pyenv安装代码>
和
pyenv全局...
我通常使用VS代码作为IDE。
我现在需要在蟒蛇做一些工作。我以前没用过。我可以简单地通过分发网站安装Anaconda并使用它的导航器,当我需要我的旧python版本时使用pyenv和VS Code,或者当我安装Anaconda时会有冲突吗?如果有冲突,是否有在OSX上运行两者的路径?
我可以安装它,当然,看看会发生什么,如果它是一个大烂摊子,从备份恢复。但是我希望一个pyenv/蟒蛇大师可能会有一些明智的建议,可以节省我几个小时的清理时间。
提前感谢!
存在冲突,导致默认情况下,pyenv
和conda
尝试公开全局Python环境。
我一直在一起使用这些工具,我找到的最佳解决方案是
pyenv
,使用pyenv global
设置的Python作为默认Pythonconda
,但不激活任何环境由于您的计算机上已安装了pyenv
,因此只需安装Anaconda即可。
brew cask install anaconda
初始化conda
,而不从conda
公开“基本”环境。
# init conda, the following command write scripts into your shell init file automatically
conda init
# disable init of env "base"
conda config --set auto_activate_base false
完成。
注意:在此设置之后,默认Python是由pyenv global
设置的。使用pyenv
和conda
分别管理环境。
管理虚拟环境的示例。
# virtual environments from pyenv
pyenv install 3.6.9
pyenv virtualenv 3.6.9 new-env
pyenv activate new-env
pyenv deactive
# You can also use `pyenv local`
# virtual environments from conda
conda create -n new-env python=3.6
conda env list
conda activate new-env
conda deactivate
pyenv
的默认环境位置为~/。pyenv/versions
。
默认环境位置为conda
,检查输出从conda info
。
不太熟悉conda,但我确实经常使用pyenv。
Pyenv有自己的虚拟环境管理器,您可以使用它。您可以随时通过以下方式检查哪个虚拟环境版本处于活动状态:
pyenv versions
您应该看到如下内容:
system
20190814_125309
* 3.7.4 (set by /home/tzhuang/.pyenv/version)
3.7.4/envs/20190814_125309
3.7.4/envs/buildmaster-sandbox
3.7.4/envs/HEAD
3.7.4/envs/myenv
3.7.4/envs/sandbox
buildmaster-sandbox
HEAD
myenv
sandbox
其中,*
表示当前活动的virtualenv(可以使用您提到的pyenv global进行设置)。您可以通过以下方式手动激活任何virtualenv:
pyenv shell
如。
pyenv shell sandbox
然后运行pyenv版本
给出:
system
20190814_125309
3.7.4 (set by /home/tzhuang/.pyenv/version)
3.7.4/envs/20190814_125309
3.7.4/envs/buildmaster-sandbox
3.7.4/envs/HEAD
3.7.4/envs/myenv
3.7.4/envs/sandbox
buildmaster-sandbox
HEAD
myenv
* sandbox
一般来说,将任何你想要的包安装到一个新的虚拟环境中而不是全局虚拟环境中是个好主意。如果遇到任何环境/依赖项问题,它可以更容易地调试。