从比较简单的2.7.9版本切换到Python 3.4.3后,我经常希望在与同事分享之前用2.7.9测试我的脚本。我使用的是OSX Yosemite平台,所有内容均由Homebrew编译。
这种情况非常麻烦(需要在每一步设置路径和PYTHONPATH)- 直到我发现了pyenv,它可以轻松地完成这个任务,并且可以很容易地使用Homebrew进行安装。目前为止,一切都很好。
但是,现在我使用的这个Python版本不一定与Homebrew兼容。此外,我发现我可以切换回系统的Python版本,并且通常情况下pyenv也可以访问它:
$ pyenv versions
system
2.7.9
* 3.4.3 (set by /usr/local/var/pyenv/version)
但是我该如何为Homebrew编译的Python
添加条目呢?
ln -s $(brew --cellar python)/* ~/.pyenv/versions
。否则,添加的 Python 版本将被称为python
而不是2.7.0
。 - Hanxueln -s $(brew --cellar python3)/* ~/.pyenv/versions
这个命令对我起了作用。 - JacobWuzHerebrew list -1 | grep python@2
打印出python@2
而不是空白,则表示你已经安装了Homebrew的Python 2版本。如果你想在pyenv中使用它,你需要稍微修改答案中的命令为:ln -s $(brew --cellar python@2)/* ~/.pyenv/versions/
。 - WalterGRln -s ~/.pyenv/versions/3.7.3 $HOME/homebrew/Cellar/python
,但Homebrew仍然会尝试安装自己的Python。 - laike9m/.pyenv/versions/”命令将Homebrew Cellar中所有以“python”开头的目录链接到/.pyenv/versions/目录下(注意使用“/python*”匹配任何以“python”开头的Cellar目录,并使用/*
连接子目录)。这样避免了特别处理特定版本的需要(请参见@JacobWuzHere、@WalterGR和@laike9m的评论)。 - Tony S Yu