tensorflow的2.x版本和1.x版本不兼容问题
tensorflow更新之后许多由tensorflow编写的代码就跑不了了,因为有一些库给改了位置或者直接删掉了,这时候我们可以在conda里边创建两个环境变量,一个装1.x,一个装2.x版本,在pycharm调用的时候选择不同的环境下的python解释器就好了,感觉很棒。
创建新环境
conda create -n tensorflow1.x python=3 // 创建一个名为tensorflow1.x的环境并指定python版本为3(的最新版本)
列出所有环境
conda info -e
这样你就可以看到conda下创建的所有环境,各个环境中的包互不干扰,其中conda本来就有的环境名字叫(base)。
切换环境
activate +环境名 注意如果环境名包含空格要用引号引住
切换环境后可以使用conda list
来看这个环境下安装的各个包,在这里我们想要安装tensorflow1.x的包,如果你已经明确知道要安装1.几的版本,可以直接使用
conda install tensorflow==1.15.0 #安装cpu版本的tensorflow1.15.0
conda install tensorflow gpu==1.15.0 #安装gpu版本的tensorflow1.15.0
conda install --channel https://conda.anaconda.org/anaconda tensorflow==1.15.0#在指定网站上边下载
如果你不知道需要安装的版本,可以使用pip install tensorflow==1.6.0
其中的1.6.0可以随便写,如果该版本不存在会给你反馈哪个版本存在,自己在选一个就行了。如下:
ERROR: Could not find a version that satisfies the requirement tensorflow==1.6.0 (from versions:
1.13.0rc1, 1.13.0rc2, 1.13.1, 1.13.2, 1.14.0rc0, 1.14.0rc1, 1.14.0, 1.15.0rc0, 1.15.0rc1,
1.15.0rc2, 1.15.0rc3, 1.15.0, 1.15.2, 1.15.3, 1.15.4, 2.0.0a0, 2.0.0b0, 2.0.0b1, 2.0.0rc0,
2.0.0rc1, 2.0.0rc2, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.1.0rc0, 2.1.0rc1, 2.1.0rc2, 2.1.0, 2.1.1,
2.1.2, 2.2.0rc0, 2.2.0rc1, 2.2.0rc2, 2.2.0rc3, 2.2.0rc4, 2.2.0, 2.2.1, 2.3.0rc0, 2.3.0rc1,
2.3.0rc2, 2.3.0, 2.3.1, 2.4.0rc0, 2.4.0rc1, 2.4.0rc2)
ERROR: No matching distribution found for tensorflow==1.6.0
之后在选择一个存在的版本使用conda安装就好了。这里推荐conda安装,它在安装时会更新其他不相适应的包,比用pip安装好。到这里就安装完成了。
如果想对从大里边的环境改个名字,则只能先复制一个环境为其他名字,在删掉原环境(注意:对于原环境名字之间含有空格的删不掉,我也不知道咋弄。。):
conda create -n 新名字 --clone 旧环境名
他就自动克隆了,之后就删除原来的
conda remove -n 原环境名 --all
这样就可以了。