我尝试在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 ?
当前回答
对于苹果的硅机器来说,路径略有不同。运行brew install python后,必须确保您的~/。zshrc使用正确的Homebrew路径:
# Homebrew
eval "$(/opt/homebrew/bin/brew shellenv)"
# Homebrew: Python
export PATH="/opt/homebrew/opt/python/libexec/bin:$PATH"
结果:
% which python
/opt/homebrew/opt/python/libexec/bin/python
% python --version
Python 3.9.9
% which pip
/opt/homebrew/opt/python/libexec/bin/pip
% pip -V
pip 21.3.1 from /opt/homebrew/lib/python3.9/site-packages/pip (python 3.9)
其他回答
只做:
brew install python
brew link python
在此之后,将其添加到bashrc或bash_profile中:
alias python='/usr/local/bin/python2'
享受吧!
不知道你说的默认Python是什么意思。我认为用不同的版本替换系统Python解释器是不好的做法。系统功能可能在某种程度上取决于系统Python和特定模块或特定的Python版本。相反,将您的自定义Python安装安装在一个安全的不同位置,并根据需要调整您的$PATH,以便通过路径查找调用您的Python,而不是寻找默认的Python。
我为OSX High Sierra“brew install python”。$PATH在任何其他路径之前都有/usr/local/bin,但仍然是python指向系统的python。
当我深入研究时,我发现/usr/local/bin目录下没有python可执行文件。可执行文件名为python2。要解决这个问题,创建一个指向python2的符号链接python:
/usr/local/bin $: ln -s python2 python
您需要编辑您的PATH环境变量,以确保在/usr/bin之前搜索自制python所在的位置。你也可以在你的shell配置中设置一些东西,让一个像PYTHON这样的变量被设置为你想要的PYTHON版本,并从命令行调用$PYTHON而不是PYTHON。
另外,正如另一个帖子所述(特别是在mac上),不要混淆/usr/bin中的python,将其指向另一个python安装。你这样做是在自找麻烦。
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。