Python 3.6 cx_freeze ModuleNotFoundError:没有名为Tkinter的模块

时间:2017-03-02 03:57:07

标签: python-3.x tkinter cx-freeze

我使用cx_freeze冻结了一个python 3.6程序,它运行得很好。但是当我试图运行它时,我收到了此错误消息。

enter image description here

有谁知道该怎么办?请帮忙!

3 个答案:

答案 0 :(得分:1)

尝试使用 import tkinter (小't'而不是资本)

答案 1 :(得分:1)

尝试检查“ lib”文件夹中的目录名称(在我的情况下为“ build \ exe.win-amd64-3.6 \ lib”)。我遇到了类似的问题(没有'ImportError:DLL加载失败...'),发现'lib'目录包含一个“ Tkinter”文件夹。将其名称更改为小写的“ tkinter”可以解决问题,并使.exe正常运行。

答案 2 :(得分:0)

如果您更清楚地阅读错误,则在评论中说明如果导入_tkinter失败,则表明您的计算机未配置为使用tkinter。您应该下载tk和ttk以使其正常工作。

根据http://wiki.python.org/moin/TkInter

  

如果它失败了“没有名为_tkinter的模块”或“Tkinter”,那么你的Python配置   需要修改以包含此模块(这是一个扩展   模块在C)中实现。不要编辑模块/设置(它不在   日期)。您可能必须安装Tcl和Tk(使用RPM时,安装   -devel RPMs)和/或编辑setup.py脚本以指向安装Tcl / Tk的正确位置。如果你安装Tcl / Tk   默认位置,只需重新运行“make”即可构建   _tkinter扩展名。