ImportError: DLL加载失败:%1 不是有效的 Win32 应用程序,适用于 Python Matplotlib

8 投票
3 回答
36829 浏览
提问于 2025-04-30 11:07
>>> from matplotlib import pyplot as plt

Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    from matplotlib import pyplot as plt
  File "C:\Python27\lib\site-packages\matplotlib\pyplot.py", line 24, in <module>
    import matplotlib.colorbar
  File "C:\Python27\lib\site-packages\matplotlib\colorbar.py", line 27, in <module>
    import matplotlib.artist as martist
  File "C:\Python27\lib\site-packages\matplotlib\artist.py", line 8, in <module>
    from transforms import Bbox, IdentityTransform, TransformedBbox, \
  File "C:\Python27\lib\site-packages\matplotlib\transforms.py", line 35, in <module>
    from matplotlib._path import (affine_transform, count_bboxes_overlapping_bbox,
ImportError: DLL load failed: %1 is not a valid Win32 application.

我遇到了这个错误。我试过了 activepythonpython xy,但是错误还是没解决。

暂无标签

3 个回答

0

在Jupyter Notebook中,我是这样解决这个问题的:

  1. 这个页面 下载并安装 "numpy-1.11.0b2+mkl-cp35-none-win_amd64.whl" 文件。

  2. 如果这样做后还是没有变化,可以试着用pip重新安装matplotlib。

4

补充一下ThePredator的回答:

我同时安装了32位64位的Python 2.7。当我在命令提示符下运行python时,Windows会加载32位的Python,但当我尝试用matplotlib运行某些东西时,就会出现错误。我使用的是64位的电脑。

我解决问题的方法

  1. 卸载所有的Python版本(可以在控制面板的程序和资源里查看)。
  2. 安装匹配的Python和matplotlib版本(32位的Python要配32位的matplotlib,等等)。大多数最新的Python安装包都带有pip,所以确保Python的目录在你的PATH里,然后在命令提示符下输入pip install matplotlib,这样就没问题了。
12

你遇到的错误是因为你安装了错误的 matplotlib 组件 (有32位和64位两个版本).

这个页面提供了所有Windows的二进制文件(32位和64位)。如果你将来需要其他软件包,这里也有提供。

试着安装适合你电脑的正确版本,这样就应该能正常工作了。

另外,别忘了检查一下你使用的Python版本是否适合你的电脑(32位或64位)

所以你现在面临的问题可能是以下几种情况:

  • 你的电脑是32位的,但你安装了64位的 matplotlib
  • 你的电脑是64位的,但你安装了32位的 matplotlib
  • 你的电脑是32位的,但你安装了64位的 Python 本身
  • 你的电脑是64位的,但你安装了32位的 Python 本身

如果你不确定你的电脑处理器是32位还是64位,可以查看 这个网站

要检查你安装的是哪个版本的Python,可以参考 StackOverflow上的这个问题

撰写回答