Python-anaconda import numpy 报错 ImportError DLL load failed 找不到指定的模块

此文首发于我的个人博客:zhang0peter的个人博客


我的numpy的版本是1.15.1,我使用的是anaconda环境。 今天在导入numpy库时遇到了一个出乎意料的错误

>>> import numpy
Traceback (most recent call last):
  File "C:\Users\peter\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\core\__init__.py", line 16, in <module>
    from . import multiarray
ImportError: DLL load failed: 找不到指定的模块。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\peter\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\__init__.py", line 142, in <module>
    from . import add_newdocs
  File "C:\Users\peter\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "C:\Users\peter\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
    from .type_check import *
  File "C:\Users\peter\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
    import numpy.core.numeric as _nx
  File "C:\Users\peter\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\core\__init__.py", line 26, in <module>
    raise ImportError(msg)
ImportError:
Importing the multiarray numpy extension module failed.  Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control).  Otherwise reinstall numpy.

Original error was: DLL load failed: 找不到指定的模块。

令人惊奇的是我在sypder中import numpy不会报错,而在命令行里import numpy会报上图的错。

解决方法1

这个问题可能是libiomp5md.dll造成的。

如果你的C:\Windows\System32目录下存在libiomp5md.dll这个dll,

而numpy自己也有一个libiomp5md.dl,在C:\Users\peter\AppData\Local\Continuum\anaconda3\Library\bin\libiomp5md.dll 那么numpy很可能会不知道应该加载哪个dll。

解决方法就是把C:\Windows\System32目录下的libiomp5md.dll重命名为libiomp5md.dll.bak(如果其他程序要用到这个DLL,以后再说)

解决方法2

这个问题也有可能是intel的DLL文件造成的。

intel有mkl*.dll在C:\Users\peter\AppData\Local\Continuum\anaconda3\Library\bin目录下,

把这个目录添加到PATH,系统的环境变量里,然后重启终端就可以了(注意替换成自己的目录)。

解决方案3

如果上面的2个解决方案都不能奏效,那么可以尝试重装numpy

pip uninstall numpy
pip install numpy

这个方法有奇效

参考资料:

Table of Contents