【问题标题】:Switching Python version installed by Homebrew切换 Homebrew 安装的 Python 版本
【发布时间】:2021-01-29 10:02:25
【问题描述】:

我通过 Homebrew 安装了 Python 3.8 和 3.9:

~ brew list | grep python
python@3.8
python@3.9

我想通过python3 命令使用Python 3.9 作为我的默认版本。我尝试了以下方法:

~ brew switch python 3.9
Error: python does not have a version "3.9" in the Cellar.
python's installed versions: 3.8.6

我试图卸载 Python 并重新安装它,但它被其他包使用:

~ brew uninstall python
Error: Refusing to uninstall /usr/local/Cellar/python@3.8/3.8.6
because it is required by glib and php, which are currently installed.
You can override this and force removal with:
  brew uninstall --ignore-dependencies python

如何使用 Python 3.9?

【问题讨论】:

标签: python macos homebrew


【解决方案1】:

使用pyenv。它是一种软件,可让您在系统上安装的任何和所有 Python 版本之间切换。要安装pyenv,请在命令行中使用以下代码:

curl https://pyenv.run | bash
exec $SHELL

然后用这个找到你要切换到的python版本的名称:

pyenv versions

然后用这个选择它:

pyenv global <version-name>

在您的情况下,它最有可能命名为 3.9.0

【讨论】:

  • 为什么我不想通过 Homebrew 安装 pyenv
  • 上面的脚本确实通过 Homebrew 安装 并且 将其设置为在启动时启动 pyenv。 @RoboRobok
  • 怎么回事?有brew install pyenv :D
  • 是的,但它也修改了启动脚本,brew install 没有这样做。只是少了些麻烦。 @RoboRobok
【解决方案2】:

有一个与 side by side install of Python 3.8 / 3.9 相关的 Homebrew 已知问题。要解决此问题,以下命令应该适合您:

brew unlink python@3.9
brew unlink python@3.8
brew link --force python@3.9

可能需要重新打开终端或执行命令rehash 以考虑更改。

【讨论】:

  • 感谢您的回答。当我执行brew link python@3.9 时,我收到以下消息:python@3.9 is keg-only and must be linked with --force
  • 你是对的。我忘记了--force。我编辑我的答案。
  • 我建议在运行后关闭并重新打开终端。
  • @moltenform 好的,我添加了您的提示。谢谢
  • 按照您描述的步骤操作后,可以使用brew uninstall python@3.8,因为它不再有依赖关系?
猜你喜欢
  • 2021-03-27
  • 1970-01-01
  • 1970-01-01
  • 2013-08-05
  • 2021-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-02
相关资源
最近更新 更多