导入错误 DLL 加载失败导入 _tkinter

34 投票
12 回答
60991 浏览
提问于 2025-04-17 09:31

我正在使用 Python 2.7.2 和 Windows 7。我在网上、帮助文档和其他地方搜索过,但找不到解决我问题的办法。

我的一个源代码导入了 tkinter,而这个又导入了 _tkinter。此时它显示 ImportError DLL load failed

 Traceback (most recent call last): File "NERO/show_image.py", line 13,
 in <module> import Tkinter File "C:\Python27\lib\lib-tk\Tkinter.py", line 38,
 in <module> import FixTk File "C:\Python27\lib\lib-tk\FixTk.py", line 65,
 in <module> import _tkinter ImportError: DLL load failed: %1 is not a valid Win32 application.
 2012-Jan-04 12:27:21.889374 (M) [python] Finished process 

我搜索了 _tkinter,发现它在 Python27/libs 目录下是一个库文件。

很多网站上说要安装 tk/tcltkinter,但我找不到适合 Windows 的单独安装包。

我使用的是 Windows x86 MSI 安装程序(2.7),可以从 http://www.python.org/getit/releases/2.7/ 下载。在 Windows 7 64 位系统上,Python 版本是 32 位。

12 个回答

6

重新安装Python。

如果这样还是不行,还有一个简单的解决办法:

  1. 先卸载你现在的Python。把你电脑C盘里的Python27文件夹完全删除掉。
  2. http://www.python.org/download/下载并安装64位版本的Python。
  3. 下次在选择应用程序时,如果有64位的选项,记得不要把32位的应用和64位的操作系统混在一起!
28

我在Windows 7 64位系统上遇到了类似的问题,导入Tkinter的时候出错。看起来是因为之前安装的64位Python的库文件还留在libs文件夹里。

我把64位的Python彻底卸载掉,然后用32位的安装程序修复了一下,这样问题就解决了。其实你不一定要用64位的Python。

3

我在一个简单的应用程序中使用matplotlib时遇到了这个错误。

首先,卸载Python,并从你的C盘中删除它的文件夹。接着,下载并安装64位的Python。然后按照这个链接上的步骤在你的电脑上安装pip。http://www1.cmc.edu/pages/faculty/alee/cs40/penv/installFlaskOnWindows.html 最后,这个方法对我有效。

撰写回答