python - 在 MacOS 上安装多个版本的 Python 3

标签 python macos python-install

<分区>

我想在 MacOS 上安装多个版本的 Python 3。例如我需要 Python3.6 和 Python3.7。使用 Linux 时,我会通过从源代码构建 Python 来简单地创建一个替代安装,如下所示:

  1. 下载特定 Python 版本的源压缩包并解压
  2. ./配置
  3. 须藤做
  4. sudo make altinstall

然后我将在 usr/local/lib/pythonx.x 中安装一个新版本的 Python。

这在 Linux 上完美运行。我将如何在 MacOS 上访问多个版本的 Python 3?

编辑: 只是为了进一步阐明我的用例。我在操作系统上安装的 Python 上使用了多个版本,这样我就可以使用 Pipenv为不同的项目指定不同的 Python 版本。

最佳答案

pyenv 是你想要的东西。它工作得非常好:

pyenv lets you easily switch between multiple versions of Python. It's simple, unobtrusive, and follows the UNIX tradition of single-purpose tools that do one thing well. This project was forked from rbenv and ruby-build, and modified for Python.

https://github.com/pyenv/pyenv

通过 Homebrew 安装它:

$ brew update
$ brew install pyenv

它为您处理各种python的下载、编译和安装,例如:

$ pyenv install 3.7.2

它可以显示您安装了哪些版本,哪些版本处于事件状态:

$ pyenv versions
  system
  3.6.7
* 3.7.2

当你在一个新的项目目录中时,只需告诉 pyenv 在那里使用哪个 python 版本:

$ pyenv local 3.6.7  # Because e.g. tensorflow isn't compat. with 3.7 :-(

您可以在其他地方设置“默认”版本:

$ pyenv global 3.7.2

它也可以与 pipenv 配合使用。

关于python - 在 MacOS 上安装多个版本的 Python 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54146842/

相关文章:

c++ - 在OS X上编译Boost时“ld: unknown option: -soname”

Python + Leopard + Fink + Mac Ports + Python.org + Idiot = 损坏的 Python - 全新开始?

python - 编码器一热混淆

python - 使用 argparse 完成 Bash 选项卡不显示目录中的所有文件

JavaFX - javafx.print.PrinterJob.createPrinterJob() 在 mac 上始终为 null

python - 如何从控制面板的程序文件中找不到的 windows 中删除 python

安装模块时超过 Python 最大递归深度

python - 如何用python删除第一次出现的重复字符

python - 导入错误 : No module named _backend_gdk

c++ - 在 OSX 中使用 CGDisplayStream 存储屏幕记录的特定文件路径