ImportError: Kein Modul namens "FileDialog" - nach PyInstaller
Ich habe ein Programm geschrieben, dass ich versucht habe zu drehen, in einer ausführbaren Datei mit PyInstaller. Pyinstaller scheint beendet zu haben, ohne Fehler und ich am Ende mit einer Anwendung in /dist/my_program. Jedoch, wenn ich versuche zu laufen, dass die Anwendung eine Konsole-Fenster blinkt für eine Sekunde mit einem traceback:
Edit: ich habe kopiert, wird die traceback-out. Es kann ein Fehler wie ich hatte, zu geben, der es von einem screenshot, weil es nur leuchtet.
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "C:\Users\user\desktop\PyInstaller-2.1\PyInstaller\loader\pyi_importers.py", line 270, in load_module
exec(bytecode, module.__dict__)
File "C:\Users\user\desktop\PyInstaller-2.1\my_program\build\my_program\out00-PYZ.pyz\matplotlib.pyplot", line 108, in <module>
File "C:\Users\user\desktop\PyInstaller-2.1\my_program\build\my_program\out00-PYZ.pyz\matplotlib.backends", line 32, in pylab_setup
File "C:\Users\user\desktop\PyInstaller-2.1\PyInstaller\loader\pyi_importers.py", line 270, in load_module
exec(bytecode, module.__dict__)
File "C:\Users\user\desktop\PyInstaller-2.1\my_program\build\my_program\out00-PYZ.pyz\matplotlib.backends.backend_tkagg", line 7, in <module>
File "C:\Users\user\desktop\PyInstaller-2.1\my_program\build\my_program\out00-PYZ.pyz\six", line 194, in load_module
File "C:\Users\user\desktop\PyInstaller-2.1\my_program\build\my_program\out00-PYZ.pyz\six", line 108, in _resolve
File "C:\Users\user\desktop\PyInstaller-2.1\my_program\build\my_program\out00-PYZ.pyz\six", line 779, in _import_module
ImportError: No module named FileDialog
Unten sind die Importe, die ich in meinem code:
import Tkinter
from tkFileDialog import askopenfilename
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import subprocess
from PIL import Image, ImageTk
import os
Weiß jemand, was die Ursache dieses/was die Lösung ist? Ich nehme an, der Fehler ist die Einfuhr von tkFileDialog?
Edit2: das Programm läuft gut, wenn ich es in meinem interpreter (Spyder) aber wenn ich verpackte es mit PyInstaller die resultierende Anwendung gibt diesen Fehler.
InformationsquelleAutor John Crow | 2014-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Laut diese Frage hinzufügen
import FileDialog
löst das problem. Matplotlib scheint dies benötigen.Allerdings habe ich verwendet Pyinstaller auf ein Skript von mir auch Import matplotlib und es gibt keine solche Fehler. Also ich weiß nicht, was genau ist das problem hier.
Dies kann auch erreicht werden, durch hinzufügen von
hiddenimports=['FileDialog',],
im th .spec-Datei istAnalysis()
Abschnitt.InformationsquelleAutor fhdrsdg