博客原文:https://blog.zhangbing.site/2021/04/15/python-version-on-mac-update/
MacOS预先安装了Python。但是它是Python版本2.7,现已弃用(Python开发者社区已弃用)。
整个Python社区现在都开始使用Python 3.x(撰写本文时的最新版本是3.9)。 Python 4.x即将发布,但将完全向后兼容。
如果尝试从MacOS终端运行Python,甚至会看到以下警告:
在Apple决定将Python 3.x设置为默认值之前,您将必须自己安装它。
或者,您可以运行以下命令以打开Python3:
python3
但你可能想安装一个合适的 Python 版本控制“shim”来跟踪各种版本,并对你使用的版本进行精细的控制。而本教程将告诉你如何做到这一点。
如何使用Homebrew在Mac上安装最新版本的Python
首先,您需要安装Homebrew。
打开你的终端。你可以通过使用MacOS spotlight(command+space)并输入“terminal”来实现。
现在您已进入命令行,您可以通过运行以下命令来安装最新版本的Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
你的终端将要求超级用户级别的访问。你需要输入密码来运行这个命令。这与你登录 Mac 时输入的密码相同。输入后按回车键。
Homebrew会要求你确认你要安装以下内容。你必须按回车键才能继续。
如何安装pyenv来管理您的Python版本
现在让我们花点时间来安装PyEnv。这个库将帮助您在不同版本的 Python 之间进行切换。(万一您因为某些原因需要运行 Python 2.x,并且期待 Python 4.0 的到来。)
运行以下命令:
brew install pyenv
现在,您可以安装最新版本的Python。
如何使用pyenv安装最新版本的Python
现在,您只需要运行以下命令:
pyenv install 3.9.2
注意,你可以用 3.9.2 来代替 Python 的任何最新版本。例如,Python 4.0.0 出来后,你可以运行这个。
pyenv install 4.0.0
对pyenv安装进行故障排除
如果遇到“C compiler cannot create executables(C编译器无法创建可执行文件)”的错误,则解决此问题的最简单方法是重新安装Apple的Xcode。
Xcode是苹果公司创建的一个工具,它包含了Python在MacOS上运行时使用的所有C库和其他工具。Xcode的容量高达11千兆字节,但你会想要更新。你可能想在睡觉的时候运行这个。
你可以在这里获得最新版本的苹果Xcode。我不得不在升级到MacOS Big Sur后进行这项工作,但一旦我这样做了,下面的命令都能正常工作。只要重新运行上面的 pyenv install 3.9.2
,现在应该可以了。
如何为pyenv设置MacOS路径(Bash或ZSH)
首先你需要更新你的Unix路径,为PyEnv与你的系统交互铺平道路。我将跳过解释这一切是如何工作的,而只是给你提供你可以运行的官方单行命令。但如果你想了解路径和垫片的工作原理,PyEnv的官方GitHub repo很好地解释了这些概念。
以下是在Bash(默认情况下安装在MacOS中)中更新 .bash_profile
的方法:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
或者,如果像我一样安装了ZSH(或OhMyZSH),则需要编辑 .zshrc
文件:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
然后,您想将PyEnv Init添加到您的终端。如果您使用的是Bash,请运行以下命令(同样,这是MacOS的默认设置):
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
或者,如果您使用的是ZSH,请运行以下命令:
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc
现在,通过运行以下命令重置终端:
reset
如何将Python版本设置为全局默认值(Bash或ZSH)
您可以将Python的最新版本设置为全局版本,这意味着当您运行Python应用程序时,它将是MacOS使用的Python的默认版本。
运行以下命令:
pyenv global 3.9.2
同样,您可以将3.9.2替换为最新版本。
现在你可以通过检查Python的全局版本来验证这是否有效:
pyenv versions
您应该看到以下输出:
最后一步:关闭终端并重新启动
重启浏览器后,运行 python
命令,你就会启动新版本的Python,而不是旧版本。
恭喜你感谢您阅读本文,并祝您编程愉快。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。