问题
ImportError: No module named 'tensorflow.python.eager'
原因
tensorflow和keras的版本不匹配
解决方案
1.查看当前tensorflow的版本
我的tensorflow的版本是:
import tensorflow as tf
tf.__version__
2.查看我keras的版本
注意:
这时候你一定是代码看不了的,因为你根本不可能导入keras的包,能导入,就不会报错了。
所以用:pip install keras 查看
pip install keras
它会显示你已经安装了,第一个就是,后面括号里的就是你的版本。
看到我的keras版本是:2.3.1
3.找到和自己tensorflow版本匹配的
通过这个网址:tensorflow和keras版本匹配的网址
我的tensorflow 1.2.1对应的keras 版本是2.0.6。(注意是python 3还是python 2;一般没影响,但是还是注意下。)
找到你自己对应的版本。
4.卸载当前版本的keras
pip uninstall keras==2.3.1
2.3.1是我的当前keras版本,换成你自己的就好。
会显示你卸载成功。
5.安装tensorflow对应版本
pip install keras==2.0.6
2.0.6是我查到我对应的版本,你换成你刚查到的就ok。
总结
这就完美解决问题。