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