我之前安装了python 3.6,今天安装了python 3.7.4。当我输入python3
时在命令中,它打开python 3.6,我想将其更改为python 3.7.4。
which python3
显示/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
,
但是 /usr/local/bin/
中的链接是 :
python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3
pip3
的情况也是如此。为什么? ?
我该如何更改which python3
到Python 3.7.4?我不想使用alias
.
我使用 MacOS 10.14.2
最佳答案
您的操作系统使用 PATH 环境变量来查找您写入 shell 的命令,因此,如果您输入 python3
,它将遍历此 PATH 中列出的目录并检查是否有您的程序。它采用第一个匹配的程序并执行它,因此在您的情况下,目录 /Library/Frameworks/.../3.6/bin
位于目录 usr/local/bin
之前>,这意味着将使用 /Library/Frameworks/.../3.6/bin
中的 python3
。
因此,您需要更改此 PATH 变量:
export PATH="/Users/sky/Documents/software/Montage-master/bin:/usr/share/file/magic/mercurial:/Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/mysql/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin"
您可以将其放入您的 ~/.bash_profile
中,以便它是永久性的,并且不需要每次打开新的终端窗口时都进行设置。
请注意,这不会自动更新您剩余 session 的路径。为此,您应该运行:
source ~/.bash_profile
关于bash - 为什么/usr/local/bin/python3 的链接与 "which python3"的路径不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57282784/