【发布时间】:2026-02-12 06:20:07
【问题描述】:
我在导入 scikit-learn、matplotlib 和 scipy 时遇到上述错误(numpy 工作正常)。
我已经安装了 python 2.7 64 (C:\Python27)。
我最近在一个新的克隆驱动器上安装了 win10 64 位。 我浏览了类似帖子的建议:
ImportError: DLL load failed: %1 is not a valid Win32 application
ImportError: DLL load failed: %1 is not a valid Win32 application. But the DLL's are there
ImportError: DLL load failed: %1 is not a valid Win32 application for Python Matplotlib
我重新安装了车轮版本的软件包。
http://www.lfd.uci.edu/~gohlke/pythonlibs/
我将目录添加到路径,将 PythonPath 添加到系统。
还是报错。
感谢您的建议,我被困住了。
谢谢
【问题讨论】:
-
%1 来自哪里?可能来自您的脚本......看起来格式化函数调用失败,或者更确切地说格式化根本不是圆顶......
-
@MichaëlRoy,“%1”是系统错误
ERROR_BAD_EXE_FORMAT的错误消息中的插入。 Python 对 OS 错误的通用处理调用带有标志FORMAT_MESSAGE_IGNORE_INSERTS的FormatMessage,它遵循“从 API 返回任意系统错误代码并在没有 FORMAT_MESSAGE_IGNORE_INSERTS 的情况下使用 FORMAT_MESSAGE_FROM_SYSTEM 是不安全的”。 -
在 Python 3 中,冒号前的错误消息已改进为包含失败的扩展模块:“导入
时 DLL 加载失败”。但是,知道“ ”通常并没有帮助。通常问题出在扩展模块所依赖的 DLL 上。要发现不匹配的文件,您需要通过 Sysinternals Process Monitor 监控文件访问,或附加调试器并启用加载程序快照以查找加载失败的 DLL。 -
@ErykSun,感谢您抽出宝贵时间回答。我运行了 Sysinternals 进程监视器。我正在弄清楚如何找到无法加载的 DLL。欢迎任何其他建议。
标签: windows python-2.7 matplotlib scikit-learn scipy