Следующий код отлично работает в IDLE, но в противном случае я получаю «NameError: глобальное имя« messagebox »не определено». Однако, если я явно укажу from tkinter import messagebox
, он будет работать нормально, где бы он ни был.
from tkinter import *
from tkinter import ttk
root = Tk()
mainFrame = ttk.Frame(root)
messagebox.showinfo("My title", "My message", icon="warning", parent=mainFrame)
Почему в IDLE не требуется явный оператор импорта, но в других местах он требуется?