Mac终端运行python调用错误版本,如何默认启动Python 3.8?
如何让Mac终端默认启动Python 3.8
先帮你捋捋问题根源:你在~/.bashrc里设置的别名没生效,大概率是因为Mac的bash默认只会加载~/.bash_profile,不会自动读取~/.bashrc,所以你的别名根本没被终端加载进去。另外也可能存在路径优先级的问题,下面给你两种解决方案,选一个顺手的就行:
方案一:让alias生效(简单直接,适合shell交互场景)
- 先确认你的Python 3.8实际安装路径,在终端执行:
你会得到类似which python3.8/usr/local/bin/python3.8或者/Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8的输出,把这个路径记下来。 - 打开
~/.bash_profile(找不到的话直接用编辑器创建即可),添加下面这行:
比如如果路径是alias python='/你刚才得到的路径/python3.8'/usr/local/bin/python3.8,就写成alias python='/usr/local/bin/python3.8'。 - 让配置立刻生效,在终端执行:
source ~/.bash_profile - 现在输入
python --version,应该就能看到Python 3.8的版本信息了。
补充:如果你不想重复写配置,也可以直接在~/.bash_profile里加一行source ~/.bashrc,这样每次启动终端都会加载~/.bashrc里的内容。
方案二:创建软链接(更彻底,适合所有场景包括脚本调用)
这个方法比alias更靠谱,因为alias只在bash交互环境生效,如果你运行Python脚本或者用其他工具调用python的话,软链接的方式能保证全局都用3.8:
- 同样先确认Python 3.8的路径:
which python3.8 - 先删除
/usr/local/bin目录下可能存在的旧python链接(如果有的话):sudo rm /usr/local/bin/python - 创建新的软链接,把
python指向3.8:sudo ln -s /你刚才得到的路径/python3.8 /usr/local/bin/python - 验证一下:
应该会显示Python 3.8.x的版本了。python --version
注意:如果你的Mac是Catalina及以后版本,默认终端用的是zsh而不是bash,那上面的配置要写到~/.zshrc里而不是bash相关的配置文件,操作步骤完全一样,只是换个配置文件就行。
内容的提问来源于stack exchange,提问作者smor
相关产品推荐
相关产品推荐

