ImportError:DLL加载失败:找不到指定的模块

时间:2013-11-25 19:45:24

标签: python numpy matplotlib

我已经安装了Python 2.5.4,Numpy 1.5.0 win32,Matplotlib 1.0.0 win32,pywin32 218.仍然无法在Python中绘制图形。这是我得到的错误:

      import pylab
   File "C:\Python25\lib\site-packages\pylab.py", line 1, in <module>
      from matplotlib.pylab import *
   File "C:\Python25\lib\site-packages\matplotlib\pylab.py", line 216, in <module>
      from matplotlib import mpl  # pulls in most modules
   File "C:\Python25\lib\site-packages\matplotlib\mpl.py", line 1, in <module>
      from matplotlib import artist
   File "C:\Python25\lib\site-packages\matplotlib\artist.py", line 6, in <module>
      from transforms import Bbox, IdentityTransform, TransformedBbox, TransformedPath
   File "C:\Python25\lib\site-packages\matplotlib\transforms.py", line 34, in <module>
      from matplotlib._path import affine_transform
ImportError: DLL load failed: The specified module could not be found.

请帮助..

8 个答案:

答案 0 :(得分:14)

(我在视频中找到了这个答案:http://www.youtube.com/watch?v=xmvRF7koJ5E

  1. 从网上下载msvcp71.dllmsvcr71.dll

  2. 将它们保存到C:\Windows\System32文件夹。

  3. 将它们保存到C:\Windows\SysWOW64文件夹中(如果您使用的是64位操作系统)。

  4. 现在尝试在Python中运行您的代码文件,它将在几秒钟内加载图表。

答案 1 :(得分:13)

我在Win 64上使用Python 3.5.1导入matplotlib.pylab时遇到了同样的问题。从这个链接安装Visual C ++RedistributablefürVisualStudio 2015:https://www.microsoft.com/de-at/download/details.aspx?id=48145修复了丢失的DLL。

我发现它比下载和粘贴DLL更好,更容易。

答案 2 :(得分:4)

简而言之,这意味着您缺少某些想要使用的库的“依赖项”。在尝试使用任何类型的库之前,首先建议查找是否需要python“family”中的另一个库。 我是什么意思?

下载“dlls”是我避免的。 我和另一个库“kivy”有同样的问题。 当我想使用Python 3.4v而不是3.5时,问题就出现了 一切都在3.5中正常工作,但我只是想使用稳定版本为vivy,这是他们正式“建议”的3.4。所以,我切换到3.4然后我遇到了同样的“dll”错误,说很多东西都丢失了。所以我检查了网站,得知我需要从kivy的官方网站安装额外的“依赖”,然后问题就解决了。

答案 3 :(得分:2)

安装Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019可以解决类似的问题,并且可以解决另一个(略有不同)驱动程序问题。

答案 4 :(得分:1)

快速记录: 检查您是否有其他Python版本,如果您已删除它们,请确保您这样做。如果你的系统上有Miniconda,那么很容易删除Python。

什么对我有用:删除了其他Python版本和Miniconda,重新安装了Python和matplotlib库,一切都运行良好。

答案 5 :(得分:0)

对于Windows 10 x64 Python

打开Visual Studio x64命令提示符,然后使用dumpbin

dumpbin /dependents [Python Module DLL or PYD file]

如果未安装Visual Studio,则可以在其他位置下载dumpbin,或使用其他实用程序,例如Dependency Walker

请注意,所有其他答案(到目前为止)只是在黑暗中的随机刺伤,而此方法更接近夜视的狙击步枪。

案例研究1

  1. 我打开了Address Sanitizer的Python模块,该模块是我使用MSVC和CMake使用C ++编写的。

  2. 出现此错误:ImportError: DLL load failed: The specified module could not be found

  3. 打开了Visual Studio x64命令提示符。

  4. 在Windows下,.pyd文件是伪装的.dll文件,因此我们要在此文件上运行dumpbin。

  5. cd MyLibrary\build\lib.win-amd64-3.7\Debug

  6. dumpbin /dependents MyLibrary.cp37-win_amd64.pyd会显示以下内容:

    Microsoft (R) COFF/PE Dumper Version 14.27.29112.0
    Copyright (C) Microsoft Corporation.  All rights reserved.
    
    
    Dump of file MyLibrary.cp37-win_amd64.pyd
    
    File Type: DLL
    
      Image has the following dependencies:
    
        clang_rt.asan_dbg_dynamic-x86_64.dll
        gtestd.dll
        tbb_debug.dll
        python37.dll
        KERNEL32.dll
        MSVCP140D.dll
        VCOMP140D.DLL
        VCRUNTIME140D.dll
        VCRUNTIME140_1D.dll
        ucrtbased.dll
    
      Summary
    
         1000 .00cfg
        D6000 .data
         7000 .idata
        46000 .pdata
       341000 .rdata
        23000 .reloc
         1000 .rsrc
       856000 .text
    
  7. 搜索了clang_rt.asan_dbg_dynamic-x86_64.dll,并将其复制到同一目录中,问题已解决。

  8. 或者,update the environment variable PATH可以指向缺少.dll的目录。

请随时在此处添加您自己的案例研究!我已将其设为社区Wiki答案。

答案 6 :(得分:0)

我安装了解决这个问题的 vc++

答案 7 :(得分:0)

我刚刚卸载了当前的 numpy 并从 this 链接安装了一个轮子 numpy。

这解决了我的问题。我想我们不应该使用来自随机来源的 dll

相关问题