解决tensorflow或keras导入错误:“ ImportError: DLL load failed: 找不到指定的程序。”

之前都是利用anaconda安装spyder和jupyter notebook,但有一次不知什么原因导致spyder和jupyter notebook甚至整个anaconda都无法打开,试了很多方法也没有解决问题。心想安装了这么多三方包,就因为anaconda的问题就得全部卸载了心里很不爽,决定以后不用anaconda了。于是重新安装python,并用pip安装spyder和jupyter notebook。

这里要特别说一下,安装spyder时开始没有成功,将一些基本的三方库装好后再安装spyder就成功了。

完了再安装各种三方包,没办法,由于急着干活,先安装了目前需要的,安装好tensorflow和keras后,运行了以下程序,导入keras时就出现了如题所述错误,由于keras用的是tensorflow的底层,于是又导入了tensorflow试了试,果然还是出现了如题所示错误,具体错误如下:

>>> import tensorflow
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\mingyang_sun\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "C:\Users\mingyang_sun\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\__init__.py", line 52, in <module>
    from tensorflow.core.framework.graph_pb2 import *
  File "C:\Users\mingyang_sun\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\core\framework\graph_pb2.py", line 6, in <module>
    from google.protobuf import descriptor as _descriptor
  File "C:\Users\mingyang_sun\AppData\Local\Programs\Python\Python36\lib\site-packages\google\protobuf\descriptor.py", line 47, in <module>
    from google.protobuf.pyext import _message
ImportError: DLL load failed: 找不到指定的程序。

网上搜索了一下,找到了原因:protobuf包的版本过高,将其降为3.6.0就可以了。

pip install protobuf==3.6.0
发布了103 篇原创文章 · 获赞 16 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/sunmingyang1987/article/details/103960869