我在链接python3和将python3设置为默认python时遇到了问题。
MacOS 10.13.6
下面是我所做的:
$ python --version
Python 2.7.15
$ python3 --version
Python 3.7.0
$ xcode-select --version
xcode-select version 2349.
$ brew install python
...
Python has been installed as
/usr/local/bin/python3
Unversioned symlinks `python`, `python-config`, `pip` etc. pointing to
`python3`, `python3-config`, `pip3` etc., respectively, have been installed into
/usr/local/opt/python/libexec/bin
...它不起作用。python仍然是2。*
$ python --version
Python 2.7.15
$ python3 --version
Python 3.7.0
$ pip --version
pip 10.0.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)
$ pip3 --version
pip 18.0 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)所以我就这么做了:
$ brew link python3
Warning: Already linked: /usr/local/Cellar/python/3.7.0
To relink: brew unlink python && brew link python
$ python --version
Python 2.7.15
$ brew install python3
...
Warning: python 3.7.0 is already installed and up-to-date
To reinstall 3.7.0, run `brew reinstall python`
$ brew reinstall python也不起作用
$ brew link python3
Warning: Already linked: /usr/local/Cellar/python/3.7.0
To relink: brew unlink python && brew link python
$ python --version
Python 2.7.15
$ python3 --version
Python 3.7.0发布于 2018-08-19 05:31:17
我假设您的意思是希望命令python启动Python3解释器,并使用pip启动pip3。
线索在消息中:
分别指向
python3、python3-config、pip3等的未版本化符号链接python、python3-config、pip3等已安装到/usr/local/opt/python/libexec/bin中
这意味着..。如果希望命令python启动python3,使用pip启动pip3__,则需要将/usr/local/opt/python/libexec/bin放在路径的开头。
因此,在您的登录脚本($HOME/.profile或类似脚本)中,您需要放入:
export PATH=/usr/local/opt/python/libexec/bin:$PATH然后注销并重新登录以使其生效。
顺便说一句,brew link python3仅仅意味着...“在指向/usr/local/Cellar/python/3.7.0/python3__的/usr/local/bin/python3中创建符号链接”。
您可以使用以下命令查看该链接及其指向的位置:
ls -l /usr/local/bin/python3发布于 2021-10-06 02:20:43
至少对于python 3.6来说,选择的答案似乎是不正确的。这可能取决于您是否安装了多个python版本的brew。在我的例子中,我有3.6,3.7,3.8和3.9。所以,你
brew unlink python@3.9
brew link python@3.6之后:
/usr/local/opt/python
is no
brew link python3链接最新安装的python (在我的例子中是3.9),而不考虑之前发布的brew链接python@3.6,因此它没有什么用处。
有一个条目/usr/local/bin/python3.6,有一个符号链接/usr/local/bin/python -> python3,但没有/usr/local/bin/python3条目。
所以如果你
ln -s /usr/local/bin/python3.6 python3你就可以走了。
https://stackoverflow.com/questions/51885394
复制相似问题