dragov 发表于 2023-1-29 07:42:59

from tkinter import meaasgebox 有必要吗 ?


from tkinter import *
from tkinter import messagebox
root=Tk()
b=Button(root,text="青海省")
b.pack()
def dianji(e):
    messagebox.showinfo('信息', '果洛藏族自治州')
b.bind("<Button-1>",dianji)
mainloop()

第一句 from tkinter import * ,已经包括所有的了 ( 即是不是已经包括了messagebox ),那为什么还要必须写上第二句呢 ?

isdkz 发表于 2023-1-29 09:14:34

本帖最后由 isdkz 于 2023-1-29 09:39 编辑

有必要,如果 __init__.py 中定义了 __all__ ,那么通过 from tkinter import * 的方式导入只会导入 __all__ 中包含的对象,

而 messagebox 就是不在 __all__ 里面的,

>>> from tkinter import __all__
>>> 'messagebox' in __all__
False
>>>

__all__: https://blog.csdn.net/hang916/article/details/79474821

dragov 发表于 2023-1-29 19:03:42

isdkz 发表于 2023-1-29 09:14
有必要,如果 __init__.py 中定义了 __all__ ,那么通过 from tkinter import * 的方式导入只会导入 __all_ ...



{:7_125:}谢谢啦
页: [1]
查看完整版本: from tkinter import meaasgebox 有必要吗 ?