我使用了python 2.5并从C:\ util \ Python25 \ Lib \ site-packages目录导入了一个名为“irit.py”的文件。这个文件导入文件“_irit.pyc,它位于同一目录中。它工作得很好,做了我想要的。 比,我用python版本2.6.4尝试了同样的事情。导入了C:\ util \ Python26 \ Lib \ site-packages中的“irit.py”,但是找不到“_irit.pyc”(与26之前的同一目录)。我收到了错误消息:
文件“C:\ util \ Python26 \ lib \ site-packages \ irit.py”,第5行,in import _irit ImportError:DLL加载失败:找不到指定的模块。
有人可以帮我理解问题以及如何解决问题? 谢谢,Almog。
答案 0 :(得分:5)
“DLL加载失败”不能直接引用.pyc
,因为那是一个字节码文件,而不是DLL; Windows上的DLL为.pyd
。因此,假设_irit.pyc
字节码文件尝试导入某些.pyd
,并且.pyd
在相应目录中的2.6兼容版本中不可用。不幸的是,似乎源文件_irit.py
也不存在,因此错误消息最终可能不那么有用。我试着运行python -v
,它会在所有模块加载和卸载操作上给出详细消息 - 当你比较它在2.5和2.6中的行为时,可能会让你推断出丢失的.pyd
的名字
答案 1 :(得分:1)
不保证Pyc文件在python版本中兼容,所以即使你修复了丢失的dll,你仍然可能会遇到问题。