每个模块都有一个 `__name__` 属性,当其值是 `__main__` 时,表明该模块自身在运行,否则是被引入
这个 __name__ 属性还好理解,模块的保留字段(属性),但是怎么理解这个 __main__ 呢?
这里的 __main__ 可能可以理解为程序的入口函数,模块直接被入口函数调用,则其 __name__ 属性值为 __main__,否则为 模块文件名:def SayHello():
print("Hello World")
def SayBye():
print("Bye World")
SayHello()
if(__name__=="__main__"):
print("Main")
else:
print(__name__)
SayBye()D:\>python Test2.py
Hello World
Test1
Bye World
Test2 First
Test2 Second
最后,引用菜鸟教程 关于 模块 的一些重要解释:模块除了方法定义,还可以包括可执行的代码。这些代码一般用来初始化这个模块。
一个模块只会被导入一次,不管你执行了多少次import。这样可以防止导入模块被一遍又一遍地执行。
模块是可以导入其他模块的。在一个模块的最前面使用 import 来导入一个模块,当然这只是一个惯例,而不是强制的。