我尝试在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 ?
当前回答
我为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
其他回答
我相信有办法使自制python成为默认的,但在我看来,解决问题的正确方法是不要打乱系统python路径:最好是创建一个virtualenv,其中自制python将是默认的(通过使用virtualenv——python选项)。使用像python_select这样的工具几乎总是一个坏主意。
快速修复:
打开/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/
祝福的人!我需要使用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.
对于苹果的硅机器来说,路径略有不同。运行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)
我为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