目录
报错1:
在用pycharm运行代码时,可能发生如下报错:
- ImportError: cannot import name 'abs'
原因:
protobuf
和tensorflow
发生了冲突
解决办法:
第一步:删除tensorflow所有模块
pip uninstall tensorflow
第二步:删除protobuf
pip uninstall protobuf
第三步:重新安装tensorflow
pip install tensorflow==1.9.0
报错2:
- illegal instruction (core dumped) 核心转储问题
原因:
这都是因为在Linux下 tensorflow没有安装好,版本问题。
解决办法:
重新在新虚拟环境下安装tensorflow
(如何查看虚拟环境是否有tensorflow,请看”2. 在已有的虚拟环境基础上重新配置“节)
第一步:在conda环境下安装新的虚拟环境
conda create -n tensorflow python=3.6.5
第二步:激活虚拟环境
source activate tensorflow #激活环境
该行代码是激活tensorflow环境,activate后的名称可以自己定义。加入定义为tensorflow1,激活后会在最之前有tensorflow环境的字样:
第三步:安装tensorflow
conda install tensorflow==1.9.0
其中,第一行python版本和第三行tensorflow版本要对应。建议python不要用3.7之后,比较麻烦,tensorflow2.0以后很多东西变了,python3.6配套tensorflow1.9,亲测有效。(如果python是3.7,tensorflow可以使用2.2.0,网上说可以)
在已有的虚拟环境基础上重新配置
第一步:查看虚拟环境中已有的配置:
conda env list
我们配置的虚拟环境都在conda环境下的env包里。从文件中也可以找到
这是我运行后的结果,可以看到,我的虚拟环境中包括三个环境,一个是base,一个是tensorflow,一个是tensorflow1。
第二步:以tensorflow为例,在这个已有的环境下重新配置tensorflow。
执行:
source activate tensorflow #激活环境
conda install tensorflow==1.9.0
第三步:安装结束后,检验tensorflow是否安装成功
python #进入python环境
#出现‘>>>’表明已经进入python环境,在后面输入:
import tensorflow as tf
#如果没有报错,可以输入
tf.__version__ #查看tensorflow版本
tf.__path__ #查看tensorflow路径
为当前代码设置运行环境(解释器)
File——》settings——》python interpreter
——》点下拉栏 如果可以看到我们配置的python环境 直接选择(之前在conda下配置了tensorflow环境,并且激活了环境,所以这里会有Python3.6(tensorflow)字样)。如果没有,看下一步
——》下拉栏没有我们刚刚配置的环境,手动添加
首先确定我们的python环境在哪里:
参考“2. 在已有的虚拟环境基础上重新配置” 的第一步,
红框中的*代表我们当前的环境,看到tensorflow是在anaconda3/envs/tensorflow下,自己记住这个路径,后面要用。
——》在setting的python interpreter中点这个按钮:
有Add和show all两项:
——》点Add,出现下面这个界面
——》因为之前用的conda环境,所以选第二个:
——》在存在的环境中找,点··· :
——》按照之前记住的python路径选择解释器,最后定位到python就行。不是python3什么的 就只是python 然后点OK
最后应用Apply 并OK就可以了。
这样代码才能真正运行。