我尝试在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 ?


当前回答

快速修复:

打开/etc/paths 更改行顺序(最高优先级在最上面)

在我的例子中,/etc/paths看起来像:

/usr/local/bin
/usr/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin

如果你想了解更多关于OSX中的路径,我发现这篇文章非常有用:

http://muttsnutts.github.com/blog/2011/09/12/manage-path-on-mac-os-x-lion/

其他回答

由于High Sierra,你需要使用:

sudo chown -R $(whoami) $(brew --prefix)/*

这是因为/usr/local不能再被切

不知道你说的默认Python是什么意思。我认为用不同的版本替换系统Python解释器是不好的做法。系统功能可能在某种程度上取决于系统Python和特定模块或特定的Python版本。相反,将您的自定义Python安装安装在一个安全的不同位置,并根据需要调整您的$PATH,以便通过路径查找调用您的Python,而不是寻找默认的Python。

只做:

brew install python
brew link python

在此之后,将其添加到bashrc或bash_profile中:

alias python='/usr/local/bin/python2'

享受吧!

祝福的人!我需要使用python 3.10版本来利用它的新功能。我在2022-07-03的解决方案如下。祝您编写python代码愉快!

» rm '/usr/local/bin/pip3.10'
» brew link python@3.10
» echo 'export PATH="/usr/local/opt/python@3.10/bin:$PATH"' >> ~/.zshrc
» python3
Python 3.10.5 (main, Jun 23 2022, 17:15:25) [Clang 13.1.6 (clang-1316.0.21.2.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Homebrew不会替换“/usr/bin”中的内容。你只需要把“/usr/local/bin”放在“/usr/bin”之前,然后“哪个python”会给你“/usr/local/bin/python”。

不建议替换/usr/bin/python(或/usr/bin/ruby)。