在Mac上安装Python3.6和Python3.7

Sam*_*Sam 56 macos tensorflow python-3.6 python-3.7

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

$ 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
Run Code Online (Sandbox Code Playgroud)

从我可以收集到的这种情况正在发生,因为tensorflow还不支持Python3.7.作为一种解决方法,我想在3.7和3.7之间安装Python3.6,然后将tensorflow安装到该版本.但是,我是Mac的新手,并且不确定正确的方法来做到这一点,而不会有可能搞乱已有的Python版本.

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

nba*_*ari 128

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

$ brew unlink python
Run Code Online (Sandbox Code Playgroud)

然后安装python 3.6.5:

$ brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
Run Code Online (Sandbox Code Playgroud)

要回到python 3.7.4_1使用:

$ brew switch python 3.7.4_1
Run Code Online (Sandbox Code Playgroud)

如果需要3.6再次切换:

$ brew switch python 3.6.5_1
Run Code Online (Sandbox Code Playgroud)

  • 我添加了--ignore-dependecies使其工作(sphinx-doc的递归依赖性错误):brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python. RB (10认同)
  • 是否存在适用于Python 3.6.7的Brew Formula链接?Python 3.6.5有一些严重的问题-https://bugs.python.org/issue24658及其安装应避免! (3认同)

Luí*_*chi 42

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

brew install pyenv
pyenv install 3.6.9
pyenv install 3.7.4    
pyenv versions
pyenv global 3.7.4 3.6.9
Run Code Online (Sandbox Code Playgroud)
$ python3.6 --version 
Python 3.6.9 

$ python3.7 --version
Python 3.7.4
Run Code Online (Sandbox Code Playgroud)

PS:全局激活仅在重新启动计算机后才起作用。您需要在环境变量$(pyenv root)/shims左侧添加前缀PATH

  • 执行 @SaravanakumarG 的建议完全破坏了我的终端,我无法再使用单个命令。正确的方法是 `export PATH="$(pyenv root)/shims:$PATH"` (4认同)
  • 如果您按照 @SaravanakumarG 的建议错误地弄乱了 PATH,只需在终端中运行 PATH=/bin:/usr/bin ,修复导出语句,然后再次获取文件 source ~/.bash_profile (2认同)
  • 在 M1 mac 上使用“pyenv install 3.6.9”时出现问题 (2认同)

won*_*ton 10

当您使用系统 python 版本时,我强烈建议您使用pyenv - 它使生活变得更加轻松。你会简单地运行

brew install pyenv
pyenv install 3.6.5
pyenv install 3.7.4
Run Code Online (Sandbox Code Playgroud)

然后你可以运行 pyenv local [python version]