我已经安装了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.
请帮助..
答案 0 :(得分:14)
(我在视频中找到了这个答案:http://www.youtube.com/watch?v=xmvRF7koJ5E)
从网上下载msvcp71.dll
和msvcr71.dll
。
将它们保存到C:\Windows\System32
文件夹。
将它们保存到C:\Windows\SysWOW64
文件夹中(如果您使用的是64位操作系统)。
现在尝试在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。
请注意,所有其他答案(到目前为止)只是在黑暗中的随机刺伤,而此方法更接近夜视的狙击步枪。
我打开了Address Sanitizer的Python模块,该模块是我使用MSVC和CMake使用C ++编写的。
出现此错误:ImportError: DLL load failed: The specified module could not be found
打开了Visual Studio x64命令提示符。
在Windows下,.pyd
文件是伪装的.dll
文件,因此我们要在此文件上运行dumpbin。
cd MyLibrary\build\lib.win-amd64-3.7\Debug
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
搜索了clang_rt.asan_dbg_dynamic-x86_64.dll
,并将其复制到同一目录中,问题已解决。
或者,update the environment variable PATH可以指向缺少.dll的目录。
请随时在此处添加您自己的案例研究!我已将其设为社区Wiki答案。
答案 6 :(得分:0)
我安装了解决这个问题的 vc++。
答案 7 :(得分:0)
我刚刚卸载了当前的 numpy 并从 this 链接安装了一个轮子 numpy。
这解决了我的问题。我想我们不应该使用来自随机来源的 dll。