我使用Python 2.7.2和Windows 7.我通过互联网search,帮助和其他来源,但我无法find我的问题的答案。
我的一个来源import_tkinter
,这一个import_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
我search_tkinter,我发现它在Python27 /库作为一个lib文件。
在许多网站上说,要安装tk/tcl
或tkinter
,但我没有find一个单独的安装Windows。
从http://www.python.org/getit/releases/2.7/使用Windows x86 MSI安装程序(2.7)。 在Windows 7 64位。 python版本是32位。
在Windows 7 64位上导入Tkinter类似的问题 – 似乎64位库仍然在以前的64位python安装的libs文件夹中。
正确卸载64位Python,然后用32位安装程序修复,解决了我的问题 – 你不需要使用64位的Python。
重新安装Python。
如果这仍然不起作用,还有另一个简单的解决方案:
C:
盘完全删除Python27
文件夹。 我有同样的问题,并能够卸载Python 2.7(使用Windows 7的“卸载”服务),然后从这里重新安装它: python-2.7.6.msi
另外,如果您担心在您的Python库中确保64位一致性,那么您可能会发现以下库列表站点是一个很好的资源 。 它有许多64位版本的Python库。
我有一个类似的问题。 我的Python版本是2.7.12和64位,我使用的是Windows 10,64位操作系统。 我试图导入Tkinter,我得到的是
ImportError: DLL load failed: %1 is not a valid Win32 application
我卸载了Python并删除了它的所有痕迹。 然后我安装了Python 2.7.14(32位),这似乎解决了我的问题。 我不再收到此错误消息。
我在我的机器上安装了很多Python包,所以我不想打开并重新安装整个python,我按照以下步骤解决了问题:
将您的C:\ Python27主文件夹更改为另一个名称,例如C:\ Python27_old
在你的电脑上安装一个新的Python27(32位)
将tcl和DLLs文件夹从新安装的python复制到旧的(在此之前,如果您在后续步骤中遇到任何问题,请复制t:\ C:\ Python27_old的DLL以恢复它)
C:\ Python27 \ tcl复制并替换为C:\ Python27_old
C:\ Python27 \ DLL复制并替换为C:\ Python27_old
请注意从tcl和dll文件夹中获取备份,以便在面临任何进一步的问题时恢复。
解决没有重新安装任何东西 :
1 – 将这3行添加到您的setup.py:
... import os os.environ['TCL_LIBRARY']= r'C:\<your python folder>\tcl\tcl8.6' os.environ['TK_LIBRARY'] = r'C:\<your python folder>\tcl\tk8.6' ... setup( ... )
2-将tcl86t.dll
和tk86t.dll
从C:\<your python folder>\DLLs
到<your project folder>
(您有批处理文件,setup.py)。
在setup.py中添加"include_files": ["tcl86t.dll", "tk86t.dll"]
option
,如下所示:
options= { 'build_exe':{'packages':[.....], "include_files": ["tcl86t.dll", "tk86t.dll"]}},
注意:如果在步骤2中没有发现tcl86t.dll和tk86t.dll在DLLs
文件夹中,那么再次尝试搜索它,但这次使用DLL文件夹中的研究选项卡。
删除64位的蟒蛇,并在32位的Python做一个修复为我工作。 操作系统:64位Windows server 2008。