基本问题,所以如果之前出现过,我深表歉意。我搜索了stackoverflow和其他地方,但我找不到明确的答案。
我很好奇为什么 tkinter 示例通常使用全局导入方法。甚至Python文档也指出这是更常见的使用方法:
。要使用 Tkinter,您需要做的就是导入一个模块:
import Tkinter
或者,更常见的是:
from Tkinter import *
http://docs.python.org/2/library/tkinter.html
我以为全球进口普遍不受欢迎?假设这是真的,在这种情况下必须有一个很好的理由使用全局导入。有人可以开导我吗?
编辑:在发布问题(并收到一些有用的回复 - 谢谢!)后,我还发现了以下有用的线程:没有*的Tkinter导入?
是的,由于各种原因,全球进口通常不受欢迎。但是,Tkinter程序将使用许多Tkinter功能,因此全局导入被许多开发人员视为节省时间。假设名称冲突很少见,因为您不太可能定义自己的 GUI 类以及需要类似名称的内容。如果是,则不会使用全局导入。
Tkinter(如果它的示例代码很多)可以追溯到二十世纪,所以它不一定遵循PEP 8,这在很大程度上是二十一世纪的文档。
现代折衷方案是import Tkinter as tk
然后使用tk.Button
等。这比tkinter.Button
更容易输入,但比Button
更清晰,特别是如果您正在编写软件来运行按钮工厂。
当您编写 GUI 应用程序时,您会非常密集地使用其 API,这与其他任何事情都不同。按钮、文本条目、事件等等。只导入所有内容非常实用。