当文件作为脚本
执行时,if __name__ == "__main__:
下面的语句才被执行
当文件作为模块
被导入时,不执行if __name__ == "__main__:
下面的语句。
例如,创建文件const.py
PI = 3.14
def main():
print("PI", PI)
main()
在同一目录下,创建文件area.py
from const import PI
def calc_round_area(radius):
return PI * (radius**2)
def main():
print("round area:", calc_round_area(2))
main()
执行area.py
,输出如下:
PI 3.14
round area: 12.56
在const.py
中添加if __name__ == "__main__":
后,
PI = 3.14
def main():
print("PI", PI)
if __name__ == "__main__":
main()
再次执行area.py
,执行结果如下:
round area: 12.56
即,添加 if __name__ == "__main__:"
后,const.py
中的main()
函数没有执行。