在 MacOS 上下载新的 python,但在询问 python 版本时仍然得到旧版本

Download the new python on MacOS but still got the old version when asking for python version

我正在从 windows 转换到 Macos,并想安装 python。它在计算机中带有旧版本的 python 2.7,因此我使用 pyenv install 命令下载 python 3。但是当我输入python --version时,我得到的还是旧版本。这是为什么?而且我也无法安装 pip。有人知道为什么吗?

如果你安装了python3(通过运行ningpython3 --version检查),你可以将python3设置为默认python版本通过创建符号 link.

运行 ls -l /usr/local/bin/python* 查看所有版本的安装位置。

lrwxr-xr-x  1 root  wheel  69 May 10  2019 /usr/local/bin/python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3
lrwxr-xr-x  1 root  wheel  76 May 10  2019 /usr/local/bin/python3-config -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3-config
lrwxr-xr-x  1 root  wheel  71 May 10  2019 /usr/local/bin/python3.7 -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7
lrwxr-xr-x  1 root  wheel  78 May 10  2019 /usr/local/bin/python3.7-config -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7-config
lrwxr-xr-x  1 root  wheel  72 May 10  2019 /usr/local/bin/python3.7m -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7m
lrwxr-xr-x  1 root  wheel  79 May 10  2019 /usr/local/bin/python3.7m-config -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7m-config

输出如上,现在你只需要从以...python3.X not ...-config or ...python3.Xm,并为其创建一个符号 link。

例如,您选择 python3.7 到 运行 作为默认版本,现在是时候创建符号 link by 运行ning:

ln -s -f /usr/local/bin/python3.7 /usr/local/bin/python

现在如果你 运行 python --version 它的输出应该是 3.7

要补充@Threem 的回答,如果您对 pip 和 pip3(python 的包管理器)有同样的问题,那么您可以 运行 以下内容:

ls -l /usr/local/bin/pip*

您会看到与他的答案类似的内容,但使用 pip 而不是 python。

然后你可以用同样的方法创建一个符号link。

ln -s -f /usr/local/bin/pip3.10 /usr/local/bin/pip

现在如果你运行

pip --version

您将获得您的 pip3 版本。