2

我使用 python 2.5 并从 C:\util\Python25\Lib\site-packages 目录导入了一个名为“irit.py”的文件。此文件导入位于同一目录中的文件“_irit.pyc。它运行良好并且做了我想要的。然后,我用 python 版本 2.6.4 尝试了同样的事情。“irit.py”在 C:\ util\Python26\Lib\site-packages 被导入了,但是没有找到“_irit.pyc”(和之前一样在26的同一个目录下)。我得到了错误信息:

文件“C:\util\Python26\lib\site-packages\irit.py”,第 5 行,在 import _irit ImportError: DLL load failed: The specified module could not be found。

有人可以帮我理解问题以及如何解决吗?谢谢,阿尔莫格。

4

2 回答 2

5

“DLL load failed”不能直接引用.pyc,因为那是字节码文件,不是DLL;DLL 将.pyd在 Windows 上。因此,大概该_irit.pyc字节码文件尝试导入一些.pyd并且.pyd在相应目录中的 2.6 兼容版本中不可用。不幸的是,源文件似乎_irit.py也不存在,因此错误消息最终提供的信息较少。我会尝试运行,它会在所有模块加载和卸载操作上给出详细的消息——当你比较它在 2.5 和 2.6 中的行为时python -v,这可能会让你推断出缺失的名称。.pyd

于 2010-04-24T17:00:41.013 回答
1

不保证 pyc 文件在 python 版本之间兼容,因此即使您修复了丢失的 dll,您仍然可能会遇到问题。

于 2010-04-25T00:19:29.557 回答