关于python:ImportError:DLL加载失败:numpy找不到指定的模块

ImportError: DLL load failed: The specified module could not be found for numpy

我有Python 3.3.2,64位。 当我使用import numpy运行脚本时,出现以下错误:ImportError: DLL load failed: The specified module could not be found.。 追溯为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Traceback (most recent call last):
File"C:\Users\ZKZJFIO\workspace\FX_FORWARD_FLAG_DETERMINATION\Main.py", line 1, in <module>
import numpy
File"C:\Python33
umpy\__init__.py"
, line 180, in <module>
    from . import add_newdocs
  File"C:\Python33
umpy\add_newdocs.py"
, line 13, in <module>
    from numpy.lib import add_newdoc
  File"C:\Python33
umpy\lib\__init__.py"
, line 8, in <module>
    from .type_check import *
  File"C:\Python33
umpy\lib\type_check.py"
, line 11, in <module>
    import numpy.core.numeric as _nx
  File"C:\Python33
umpy\core\__init__.py"
, line 14, in <module>
    from . import multiarray

我查看了似乎正在处理类似问题的链接,发现我确实有multiarray.pyd,因此我对如何解决此问题感到有些困惑,因为有关此错误的大多数问题似乎都针对该模块 。

在multiarray.pyd上运行dependency walker之后,似乎缺少MSVCR90.DLL和PYTHON27.DLL。 仅仅下载Python27来纠正此问题是否值得,因为有人告诉我直接下载dll可能不是最好的选择?

谢谢


我最近在使用pynsist / nsis将pyqt桌面应用程序分发给一组用户时遇到了相同的错误。我以为我会发表可能对他人有帮助的评论。

在这种情况下,错误可追溯到计算机上具有多个版本的libiomp5md.dll的用户。这些文件之一位于系统路径变量中引用的Intel Fortran编译器目录中。

在我的情况下,解决方案是强制将正确的libiomp5md.dll用于相关的python安装(在我的情况下,是使用conda创建的虚拟python 3.5环境)。
我通过在系统路径前面加上python安装目录lib bin来做到这一点。


自从Numpy的创建者与人共同创立了一家发布python发行版等的公司以来(Numpy是在Windows上运行的195个库之一),我建议您选择一个使用https://www.anaconda。 com / distribution /#download-section。您可以选择2.7或3.x版本


在重新安装Miniconda之后,在Anaconda Prompt中通过conda install numpy进行numpy安装后,我也遇到了这个问题。

对我有用的是通过进行卸载

conda uninstall numpy

并使用pip安装:

1
pip install numpy