cx_Freeze ImportError: non può importare nome
-
19-09-2019 - |
Domanda
Sto cercando di creare un eseguibile per Windows per un'applicazione GUI Tkinter utilizzando il modulo TTK. Ho fatto un exe con cx_freeze, ma quando faccio funzionare l'applicazione nella console mi dà il seguente errore:
D:\My Dropbox\python\SAR Calculator\src\dist_tk>
Traceback (most recent call last):
File "C:\Python31\lib\site-packages\cx_Freeze\
7, in <module>
exec(code, m.__dict__)
File "sarcalc_tk.py", line 14, in <module>
File "C:\Python31\lib\tkinter\__init__.py", li
from tkinter import _fix
ImportError: cannot import name _fix
Ecco le linee 14 e 15 dal mio codice:
import tkinter as tk
import tkinter.ttk as ttk
Soluzione
appare come cx_freeze non si rende conto che deve includere il modulo tkinter._fix
, che è condizionatamente importati dalla tkinter/__init__.py
. Si può dire che per includere tale modulo in modo esplicito con l'argomento --include-modules
della riga di comando, o la parola chiave includes
argomento al cx_Freeze.Executable
nel vostro setup.py
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow