NameError: name 'tkFileDialog' ist nicht definiert
Ich versuche, Tkinter und bekommen die Benutzer zu einer bestimmten Datei. Mein code sieht wie folgt aus (ich bin gerade erst mit Tkinter)
from Tkinter import *
from tkFileDialog import *
root = Tk()
root.wm_title("Pages to PDF")
root.wm_iconbitmap('icon.ico')
w = Label(root, text="Please choose a .pages file to convert.")
y = tkFileDialog.askopenfilename(parent=root)
y.pack()
w.pack()
root.mainloop()
Wenn ich das Programm starte, bekomme ich eine Fehlermeldung, die sagt:
NameError: name 'tkFileDialog' is not defined
Ich habe es versucht mit ein paar Konfigurationen, die ich gefunden online. Keiner von Ihnen gearbeitet haben; aber das ist grundsätzlich die gleiche Fehlermeldung jedes mal. Wie kann ich dieses Problem beheben?
- y falsch verwendet wird, bearbeitet ich die Antwort unten mit der richtigen Verwendung. Ergebnis askopenfilename() ist ein string, der nicht ein Tkinter-Objekt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Importieren Sie alles aus
tkFileDialog
- Modul, so dass Sie nicht brauchen, um schreiben Sie einen Modul-Namen als PräfixtkFileDialog.askopenfilename()
nuraskopenfilename()
, wie:y
? Danke!open(...)
finden Sie unter tkinter.unpythonic.net/wiki/tkFileDialogopen(y)
?open(...)
haben zwei (drei, aber der Dritte ist nicht erforderlich) Parameter:open(filename, openmode)
.openmode
zeigt an, ob Ihr die Datei öffnen für Lesen, schreiben... docs.python.org/2/library/functions.html#openy
s Sie können es verwenden, wo immer Sie wollen.print (y)
, gab es den FehlerNameError: global name `y` is not defined
.y
in einer anderen Funktion. =)Versuchen Sie dies:
Scheint ein Raum-name problem.
Versuchen Sie dies: