如何将python从3.7降级到3.6


88

我正在尝试安装tensorflow,但它需要安装Python 3.6,而我只安装了Python 3.7。我试图使用brew和pyenv进行切换,但是它不起作用。

有谁知道解决这个问题的方法吗?


4
我建议您使用Anaconda。然后为每个新项目创建新环境并在使用前将其激活。在你的情况,conda create -n myenv python=3.6以及source activate myenv
CANH


1
升级tensorflow Tensorflow 1.14和1.15支持Python 3.7(或更早版本),而Tensorflow 2.2支持Python 3.8
Boris

Answers:


34
$ brew unlink python
$ brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/e128fa1bce3377de32cbf11bd8e46f7334dfd7a6/Formula/python.rb
$ brew switch python 3.6.5
$ pip install tensorflow

最后一行有错字
疯狂物理学家

1
这很好用,但我建议在pip install tensorflow创建virtualenv或conda env之前,先将其激活,然后再使用pip install tensorflow
Diego Aguado

如果您以前有此python版本并将其升级为更高版本(并且未使用$ brew cleanup命令),则可以跳过前两行
Mykola Zotko

3
什么是啤酒?我不能使用apt吗?
Jamie Hutber

@JamieHutber brew.sh是最初为macOS制作的软件包管理器,但如今它也支持Linux,请参阅docs.brew.sh/Homebrew-on-Linux。如果必须使用apt,可以尝试添加deadsnakes打包旧python版本的PPA:launchpad.net/~deadsnakes/+archive/ubuntu/ppa,但仅适用于长期支持(LTS)Ubuntu版本,即14.04、16.04,当我在2020
鲍里斯(Boris)

28

如果您正在使用Anaconda,那么

conda install python=3.5.0
# or maybe 
conda install python=2.7.8
# or whatever you want....

可能有用。


这工作并解决了我的问题。这不仅安装了旧版本的Python,还降级了该版本。
stok

3
还有其他不使用condaLinux的解决方案吗?
Dentrax

2
我知道了 UnsatisfiableError:The following specifications were found to be in conflict: - python=3.5.0 - ssl_match_hostname -> python[version='>=2.7,<2.8.0a0'] -> readline=7 - ssl_match_hostname -> python[version='>=2.7,<2.8.0a0'] -> tk=8.6
MrMartin '19

11

创建一个虚拟环境,安装并切换到python 3.6.5

$ conda create -n tensorflow python=3.7
$ conda activate tensorflow
$ conda install python=3.6.5
$ pip install tensorflow

当您想使用tensorflow时激活环境



3

使用conda创建一个python虚拟环境,然后安装tensorflow:

$ conda create -n [environment-name] python=3.6
# it may ask for installing python-3.6 if you don't have it already. Type "y" to proceed...
$ activate [environment-name]
$ pip install tensorflow

从现在开始,您随时可以使用tensorflow激活环境。

如果您没有conda软件包管理器,请先从这里下载:https : //www.anaconda.com/distribution


嗨,@ Seyed,我有同样的问题,我的默认spyder以3.7打开,尽管我打开了我的conda python 3.6.9环境的tools-> preferences,如何切换spyder,anaconda导航器未显示spyder的启动?
hanzgs

2

无需卸载先前版本或还原为其他软件(如Anaconda或docker等)的一种干净方法是下载Python 3.6源代码并按以下方式安装:

$ mkdir /home/<user>/python3.6
$ ./configure --prefix=/home/<user>/python3.6/
$ make altinstall

要使用它,您可以:

  • 添加/home/<user>/python3.6/bin到您的PATH(和libLD_LIBRARY_PATH),并用它做。(您可能还需要添加您的包含路径等,具体取决于您要实现的目标-但我希望您能明白。)

  • 或者,您创建类似于以下内容的虚拟环境:/home/<user>/python3.6/bin/python3.6 -m venv env-python3.6

无需sudo或root访问。不会弄乱您的系统。


不要忘记首先下载最新版本(3.6.9):python.org/downloads/release/python-369
Rabindranath

1

我在使用python 3.7安装tensorflow时遇到问题,并按照以下说明使用python3.6进行了虚拟环境设置并使其正常运行

Download the Python3.6 tgz file from the official website (eg. Python-3.6.6.tgz)
Unpack it with tar -xvzf Python-3.6.6.tgz
cd Python-3.6.6
run ./configure
run make altinstall to install it (install vs altinstall explanation here 

为tensorflow设置python3.6虚拟环境

如果您使用的是jupyter笔记本电脑或jupyter实验室,则有助于选择正确的虚拟环境

python -m venv projectname
source projectname/bin/activate
pip install ipykernel
ipython kernel install --user --name=projectname

在这一点上,您可以启动jupyter,创建一个新的笔记本,然后选择环境中的内核。

虚拟环境和Jupyter笔记本

希望这可以帮助


-1

对于那些想要在其系统中添加多个Python版本的用户:我可以通过运行以下命令轻松添加多个解释器:

  • sudo apt更新
  • sudo apt安装软件属性通用
  • sudo add-apt-repository ppa:死蛇/ ppa
  • sudo apt安装python 3.xx
  • 然后在虚拟环境中选择所需的解释器。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.