关于macos:在Mac上同时安装Python3.6和Python3.7

Installing Python3.6 alongside Python3.7 on Mac

我正在尝试使用Python3.7在Mac上安装tensorflow。 但是,我得到了错误:

1
2
3
4
5
6
7
8
$ pip3 -v install tensorflow
...    
    Skipping link https://files.pythonhosted.org/packages/56/7a/c6bca0fe52a94ca508731d8b139e7dbd5a36cddc64c19f422f97e5a853e8/tensorflow-1.10.0rc1-cp36-cp36m-win_amd64.whl#sha256=3ab24374888d6a13d55ce2e3cf4ba0c9cd6f824723313db5322512087525cb78 (from https://pypi.org/simple/tensorflow/); it is not compatible with this Python
  Could not find a version that satisfies the requirement tensorflow (from versions: )
Cleaning up...
Removed build tracker '/private/var/folders/4n/9342s4wd3jv0qzwjz8rxrygr0000gp/T/pip-req-tracker-3p60r2lo'

No matching distribution found for tensorflow

据我所知,这是因为tensorflow尚不支持Python3.7。 作为一种解决方法,我想将Python3.6与3.7一起安装,然后将tensorflow安装到该版本。 但是,我是Mac的新手,因此不确定在不混淆现有Python版本的情况下执行此操作的正确方法。

我已经尝试过使用brew,但是Python3看起来像它一样具体。 做我追求的正确方法是什么?


例如,如果已经使用Python 3,请尝试使用brew

1
$ brew unlink python

然后安装python 3.6.5:

1
$ brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

返回python 3.7.4_1使用:

1
$ brew switch python 3.7.4_1

如果需要3.6,请再次切换:

1
$ brew switch python 3.6.5_1


如果使用的是Mac,则可以从Brew安装pyenv,安装所需版本,列出已安装的版本,然后在本地或全局激活每个版本。

1
2
3
4
5
6
7
8
brew install pyenv

pyenv install 3.6.9
pyenv install 3.7.4

pyenv versions

pyenv global 3.7.4 3.6.9

python3.6 --version

Python 3.6.9

python3.7 --version

Python 3.7.4

PS:全局激活仅在重新启动计算机后才起作用。


当您弄乱系统python版本时,我强烈建议您使用pyenv-它使生活变得更加轻松。 您只需运行

1
2
pyenv install 3.6.5
pyenv install 3.7.4

然后您可以运行pyenv local