我在用哪条Python?

2024-03-28 22:04:33 发布

您现在位置:Python中文网/ 问答频道 /正文

即使已经通过自制程序安装了最新版本的Python,也很难确定我是否真的在使用它们。

$ brew upgrade python3
Error: python3 3.6.2 already installed

但是:

$ python3 --version
Python 3.6.0

Python也一样:

$ brew upgrade python
Error: python2 2.7.13_1 already installed

$ python --version
Python 2.7.10`

Tags: installed版本versionerrorupgradepython3brewpython2
3条回答

首先,我修改了$PATH:sudo nano /etc/paths,这样就不会调用/Library/Frameworks/Python.framework/Versions/3.6/bin。我确保我的路径是正确的,这样python就可以首先寻找/usr/local/bin/python3/usr/local/bin/python2来强制解决这个问题。

但是,$ python3 --version仍然返回 Python 3.6.0,尽管brew说python3 3.6.2 already installed

brew doctor拯救:自制推荐了一些东西。python的符号链接不正确,因此我运行了brew --overwrite python3。最后,它诊断出python来自/Library/Frameworks/Python.framework/Versions/3.6/bin,所以我sudo rm -rf /Library/Frameworks/Python.framework。现在python版本是正确的。

Homebrew brew doctor warning about /Library/Frameworks/Python.framework, even with brew's Python installed

谢谢大家的帮助。

是否为每个环境变量设置了单独的环境变量?

我在过去发现,例如有多个版本的python 2,如果没有所有的环境变量,可能会变得相当混乱!

在输入python3时,您可能会发现windows只查看python3.0,除非您在python3.6.2目录中。

❯ echo `which python`

如果没有打印“/usr/local/bin/python”(brew实际上安装了二进制文件),那么$PATH就有问题(可能不存在“/usr/local/bin”,或者它是在“/usr/bin”之后插入的,所以系统默认的python正在运行)。

++似乎brew默认将python2.7命名为python2,而不是python,因此您可能还需要在/usr/local/bin目录中创建python2->;python链接。

相关问题 更多 >