切换由 python 安装程序安装的 python 版本 (mac)



我使用python安装程序(从 www.python.org 下载)来安装python3.8和python 3.9。是否可以在不同的项目之间切换它们?我认为 pyenv 不会在这里工作(还),因为 pyenv 只能切换它安装的版本。 https://github.com/pyenv/pyenv/issues/1628 证实了这一点。

例如,当我的机器上运行pyenv versions

➤ pyenv versions
* system (set by /Users/qiulang/.pyenv/version)
3.4.0
3.5.3
3.6.10 

那里的系统版本是python3.9。

我的大多数 python 脚本都需要 3.8,因为我使用了 3.8 下的pip3 install包。

我安装了 3.9来体验最新功能,但我不会将 3.9 作为我的默认 python3,否则我需要重新安装软件包。

现在我找不到一种方法来做到这一点,所以我不得不将我的脚本从

#! /usr/bin/env python3#! /usr/local/bin/python3.8作为临时解决方案。

大约一周前我遇到了同样的问题。pyenv有一个扩展名为pyenv-register。 我安装了它,并用它来注册我的每个Homebrew安装的Python版本。 这为您注册的每个 Python 提供了一个pyenv版本,看起来像system-3.9.0.

在注册了Homebrew安装的Python版本后,我在~/.pyenv/versions中创建了符号链接,以便为我注册的每个版本创建一些更简单的别名。 以下是该目录在我的系统上的外观:

lrwxr-xr-x  1 steve  staff    6 Jun 23  2019 2 -> 2.7.16
lrwxr-xr-x  1 steve  staff    6 Jun 23  2019 2.7 -> 2.7.16
drwxr-xr-x  6 steve  staff  192 Jun 23  2019 2.7.16
lrwxr-xr-x  1 steve  staff    5 Jun 23  2019 3 -> 3.7.3
lrwxr-xr-x  1 steve  staff    5 Jun 23  2019 3.7 -> 3.7.3
drwxr-xr-x  6 steve  staff  192 Jun 23  2019 3.7.3
lrwxr-xr-x  1 steve  staff    5 Nov 14 14:51 3.8 -> 3.8.6
lrwxr-xr-x  1 steve  staff   12 Nov 14 14:51 3.8.6 -> system-3.8.6
lrwxr-xr-x  1 steve  staff    5 Nov 14 14:51 3.9 -> 3.9.0
lrwxr-xr-x  1 steve  staff   12 Nov 14 14:51 3.9.0 -> system-3.9.0
drwxr-xr-x  6 steve  staff  192 Nov 14 14:48 system-3.8.6
drwxr-xr-x  6 steve  staff  192 Nov 14 14:50 system-3.9.0

这是pyenv versions给我的:

% pyenv versions
system
2
2.7
2.7.16
* 3 (set by /Users/steve/.pyenv/version)
3.7
3.7.3
3.8
3.8.6
3.9
3.9.0
system-3.8.6
system-3.9.0

这对我来说非常有用,因为我已经用Homebrew安装了我的新Python。 我假设它也适用于使用下载的安装程序安装的 Python 版本。 我希望这对您有所帮助!

相关内容

  • 没有找到相关文章

最新更新