Pyinstaller,.py版本工作,.exe“没有名为Tkinter的模块”?

时间:2016-12-13 11:59:20

标签: python tkinter pyinstaller

我不明白这是怎么发生的。 myscript.py工作,安装Tkinter。然而,一旦我使用pyinstaller将其转换为.exe,我运行了myscript.exe,我在命令提示符下输入了一条消息“没有名为Tkinter的模块”。

我该如何解决这个问题? 我已经尝试过多次转换,尝试使用--noupx,并尝试重新安装pyinstaller。感谢

1 个答案:

答案 0 :(得分:1)

PyInstaller - 隐藏的进口

尝试使用--hiddenimport标志。执行--hiddenimport=Tkinter,或用您需要的任何模块替换Tkinter。这个问题似乎在整个PyInstaller社区中重演。 Here is one article

名称空间

Tkinter已将其名称空间从Python 2更改为Python 3.它现在在Python 3中命名为tkinter,在Python 2中命名为Tkinter。这是我喜欢使用的代码,因此它& #39;跨版本。

try:
  import Tkinter as tk
except ImportError:
  import tkinter as tk

然后您可以将Tkinter引用为tk。或者,如果您执行from Tkinter import *,则可以使用没有命名空间的所有内容。有关版本之间更多名称更改的信息,请参阅列表here

相关问题