我安装了最新的 64 位 Python 2.5。我运行 shell,并尝试 import socket
,然后得到:
>>> import socket
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\python25\lib\socket.py", line 45, in <module>
import _socket
ImportError: DLL load failed with error code 193
我对 64 位 Python 2.6.6 进行了同样的尝试,得到:
>>> import socket
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\python26-64\lib\socket.py", line 46, in <module>
import _socket
ImportError: DLL load failed: %1 is not a valid Win32 application.
这是怎么回事? (我仔细检查过,是的,操作系统是 64 位的)。
更新:我还在这台机器上安装了 32 位 python。如果这是冲突,我如何安装两个版本的 python 并让它们正常运行?
最佳答案
这两个错误是同一个错误,代码193,两种不同的报错方式。这是因为您的 64 位 Python 正在尝试加载 32 位 DLL。
很难说清楚为什么会这样。也许您错误地安装了一些 32 位 Python 模块。可能路径有些困惑。
然而,解决此类问题的最简单方法通常是切换到 32 位 Python,它可以在 64 位 Windows 上完美运行。一个附带的好处是,您有时会希望使用仅以 32 位形式提供的模块——64 位模块支持仍然有点不完整。
关于python - 64位python 2.5/2.6+windows 7 "import socket"DLL加载错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5286014/