在新配置的Anaconda的environment中安装tensorflow时,有时虽然安装成功了,import也能成功,但是一些基本的功能是用不了的。经常报错比如:
AttributeError: module ‘tensorflow’ has no attribute ‘placeholder’
AttributeError: module ‘tensorflow’ has no attribute ‘version’
等等

我一般会用tf.__path__查看一下tensorflow的安装路径,一般情况是安装在D:/Anaconda3/envs/环境名称/Lib/site-packages/tensorflow下面,但是报这个错的时候,tf.__path__显示D:/Anaconda3/Lib/site-packages/tensorflow也就是解释器找到了主目录下的tensorflow。

尝试删掉主目录下的tensorflow,用conda list查看package是用conda安装的还是用pip安装的。分别用命令conda remove 包的名称pip uninstall package-name来删掉。

或者在PYTHONPATH中加入D:/Anaconda3/envs/环境名称/Lib/site-packages/tensorflow看看解释器能不能找到这里去。

这时还是不行的话,我一般会在env里面重新安装一遍jupyter notebookconda install jupyter notebook。我的理解是如果环境中没有安装jupyter notebook的话,它会调用主目录下的jupyter,也就调用了主目录下的tensorflow。

或者可以想办法手动在jupyter notebook中添加kernel,因为我们新创建的env可能并不被jupyter识别。

最后还是无效的话,就把env、主目录里的tensorflow全删了,再不行把环境也删了,重新装一遍。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐