我尝试在Mac OS X 10.6.2上切换到Homebrew(在使用fink和macport后)。我已经安装了python 2.7
brew install python
问题是,与Macport相反,似乎没有python_select实用程序,我的默认mac python总是默认的
which python
给我
/usr/bin/python
而且/usr/bin/python不是符号链接
我怎么做才能使python酿造风味成为我的默认python ?
我尝试在Mac OS X 10.6.2上切换到Homebrew(在使用fink和macport后)。我已经安装了python 2.7
brew install python
问题是,与Macport相反,似乎没有python_select实用程序,我的默认mac python总是默认的
which python
给我
/usr/bin/python
而且/usr/bin/python不是符号链接
我怎么做才能使python酿造风味成为我的默认python ?
当前回答
将/usr/local/opt/python/libexec/bin显式添加到.bash_profile:
export PATH="/usr/local/opt/python/libexec/bin:$PATH"
在那之后,它应该能正常工作。
其他回答
Homebrew不会替换“/usr/bin”中的内容。你只需要把“/usr/local/bin”放在“/usr/bin”之前,然后“哪个python”会给你“/usr/local/bin/python”。
不建议替换/usr/bin/python(或/usr/bin/ruby)。
Python公式现在使用python3(目前为v3.6.5), brew将链接目录:
/usr/local/opt/python -> ../Cellar/python/3.6.5
它还将链接二进制文件:
/usr/local/bin/python3 -> ../Cellar/python/3.6.5/bin/python3
如果仍然需要使用python2。x,使用:
brew install python@2
要使用homebrew的python,只需将其目录放在PATH中,用于bash:
export PATH="/usr/local/opt/python/libexec/bin:$PATH"
鱼:
set -x PATH /usr/local/opt/python/libexec/bin $PATH
注意:
这样做将隐藏系统默认的python版本 在旧版本中,Homebrew曾经将python链接到/usr/local/share/python。
使用pyenv来安装和切换Python版本。我多年来一直在使用rbenv,它做同样的事情,但用于Ruby。在此之前,它是地狱管理版本。
查阅pyenv的github页面以获得安装说明。基本上是这样的: -使用自制程序安装pyenv。酿造安装pyenv -在你的shell启动脚本的末尾添加一个函数,这样pyenv就可以做它的魔法了。Echo -e 'if command -v pyenv 1>/dev/null 2>&1;\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
使用pyenv来安装你需要的不同版本的Python。Pyenv安装3.7.7。 将默认(全局)版本设置为刚刚安装的现代版本。Pyenv全局3.7.7。 如果您从事的项目需要使用不同版本的python,请查看pyevn local。这将在项目的文件夹中创建一个指定python版本的文件。Pyenv会用该文件中的版本重写全局python版本。
不知道你说的默认Python是什么意思。我认为用不同的版本替换系统Python解释器是不好的做法。系统功能可能在某种程度上取决于系统Python和特定模块或特定的Python版本。相反,将您的自定义Python安装安装在一个安全的不同位置,并根据需要调整您的$PATH,以便通过路径查找调用您的Python,而不是寻找默认的Python。
brew link python
你必须为python创建/添加一个别名,并将其放在你的.zprofile中(位于Users/username文件夹中,如果你按Shift+command+。
这必须指向您的自制python安装位置。
alias python ='opt/homebrew/bin/python3'