我总是会在tensorflow上遇到相同的错误:
ModuleNotFoundError: No module named 'tensorflow.contrib'
.
我实际上是在使用Python版本3.9
但是,在线阅读,似乎版本是可以使用TensorFlow版本
3.7
.的最后一个稳定版本。 不幸的是,我已经用错误的版本的Python开始了我的项目,我想降级它,我该怎么做?
构建 @chepner上面的评论,由于VENV只是目录,因此您可以保存当前状态并开始一个新的虚拟环境。
>2.0
有the
venv
命令,但主要是要在补丁版本之间进行更新(例如3.9.15到3.9.16)。 您需要额外的步骤来更新不同的次要版本。让我带你穿过它。用来安装两个版本的Python:
# Save current installs
(venv) -> pip freeze -r > requirements.txt
# Shutdown current env
(venv) -> deactivate
# Copy it to keep a backup
-> mv venv venv-3.9
# Ensure you have python3.7
-> python3.7 -V
# Create and activate a 3.7 venv
-> python3.7 -m venv venv-3.7
-> source venv-3.7/bin/activate
# Reinstall previous requirements
(venv-3.7) -> pip install -r requirements.txt
# Install new requirements
venv --upgrade <ENV_DIR>
子目录中:
$ python3.9 --version
Python 3.9.16
$ python3.7 --version
Python 3.7.16
将这些命令从3.9降级到3.7:
venv
the的结果是:
$ . venv/bin/activate
$ python --version
Python 3.9.16
$ deactivate
我只是使用VS代码而不是命令行: 在vs code的左下角的
插图部分上单击。选择
“选择解释器”
.
。键入您想要的环境版本Python版本。
$ python3.7 -m venv --upgrade venv
$ cd venv/bin
$ ln -sf python3.7 python
$ ln -sf python3.7 python3
$ rm {python,pip}3.9
$ cd -
文件中的所有依赖项,并使用更新的Python版本重新初始化您的环境。
被弃用了最新版本的$ . venv/bin/activate
$ python --version
Python 3.7.16
,并由
upgraded
版本的requirements.txt
具有
TensorFlow 2.x
.