从Tkinter Python导入东西

时间:2018-10-30 05:06:16

标签: python tkinter

我是Python编程的新手。 我正在使用tkinter模块为图形用户界面导入内容。

我通过键入以下语句从tkinter模块导入所有内容:

from tkinter import *

尽管我们已经使用tkinter中的上述语句导入了所有内容,但为什么仍需要从与simpledialog之类的同一模块中分别导入某些类?

from tkinter import simpledialog

不单独导入simpledialog会引发错误。

1 个答案:

答案 0 :(得分:2)

是的,它确实会引发错误,因为 simpledialog 并非直接是 tkinter 的模块。

基本上,模块是每个文件,文件扩展名为.py,并且由适当的Python代码组成。使此类文件成为模块不需要任何特殊语法。模块可以包含任意对象,例如文件,类或属性。导入后可以访问所有这些对象。

如果您执行 dir(tkinter) 而不显式导入simpledialog,它将显示除simpledialog之外的结果。

这是由于库的结构。它不会自动导入tkinter的所有模块。一旦使用了 import tkinter.simpledialog ,它将向您显示simpledialog模块,这意味着simpledialog从未从tkinter导入。

此外,建议使用 import tkinter ,而不是从tkinter import astrik 来的 在交互式Python Shell中。原因之一是名称的来源可能非常晦涩,因为无法看到它可能是从哪个模块导入的。