有人可以向我解释一下吗?
导入Tkinter.Messagebox
时实际意味着什么(Dot Notation)?
我知道您可以导入Tkinter
,但导入Tkinter.Messagebox
时实际上是什么?这是一堂课内的课吗?
我是python中的新手,点符号有时会让我迷惑......!
答案 0 :(得分:3)
当您在导入中添加该点时,您指的是您要导入的包/文件中的内容。 您导入的内容可以是类,包或文件,每次放置一个点时,您会在实例内部询问一些内容。
parent/
__init__.py
file.py
one/
__init__.py
anotherfile.py
two/
__init__.py
three/
__init__.py
例如你有这个,当你传递import parent.file
时你实际上导入了另一个可能包含类和变量的python模块,所以要引用你文件中的特定变量或类{{ 1}}例如。
这可能会更进一步,将包装导入另一个包或包内的文件内的类等(如from parent.file import class
)
有关详细信息,请阅读Python documentation。
答案 1 :(得分:2)
import a.b
将b
导入名称空间a
,您可以a.b
访问它。请注意,这只适用于b
是模块的情况。 (例如,Python 3中的import urllib.request
from a import b
将b
导入当前名称空间,可由b
访问。这适用于类,函数等。
使用from - import时要小心:
from math import sqrt
from cmath import sqrt
两个语句都将函数sqrt
导入当前名称空间,但是,第二个import语句会覆盖第一个语句。