У меня есть работающее приложение, использующее Python 2.7 и Tkinter, которое использует следующие конструкции:
from Tkinter import *
import Tkinter
import tkFileDialog
class Window(Frame):
#...
# other functional code
#...
def ChangeCWD(self): #CWD is current working directory
root = Tkinter.Tk()
root.withdraw()
directory = tkFileDialog.askdirectory( ... )
root = Tk()
root.mainloop()
У него есть метки, кнопки, холст, несколько фреймов и диалоговые окна с файлами, и все это прекрасно работает.Я начал обновлять код для работы на Python 3.5, и до сих пор все функции работают, за исключением диалога с файлами.Вот где я дошел до:
from tkinter import *
import tkinter
import tkinter.filedialog
class Window(Frame):
#...
# other functional code
#...
def ChangeCWD(self): #CWD is current working directory
root = tkinter.Tk()
root.withdraw()
directory = filedialog.askdirectory( ... )
root = Tk()
root.mainloop()
Однако этот код выдает ошибку
"NameError: имя 'filedialog' не определено"
при достижении оператора filedialog.askdirectory ().Может ли кто-нибудь помочь мне понять, что я должен сделать, чтобы исправить ситуацию, пожалуйста?
В сторону, пожалуйста, будь осторожен со мной!Я всегда был весьма озадачен различными способами вызова операторов импорта и использованием «tk».или "корень".до вызова некоторых функций.В Интернете просто слишком много противоречивых объяснений, и я не могу получить ясную картину.