笔记之 if __name__ == "__main__"

 

一个python文件可以直接作为脚本执行,也可以作为模块import到其他python文件中被调用。

当直接执行时,__name__ 等于__main__ 。 当被import时,其自身文件中的__name__等于模块名,也即自己的文件名(不带后缀.py)

 

test_01.py

print("hello")
print(__name__)

if __name__ == "__main__":
    print("我被直接执行了")

test_01.py直接运行时,结果如下:

 可以看出直接运行test_01.py , 代码中的__name__是等于"__main__"的

 

 import_test_01.py

import test_01
print("我调用了test_01")

import_test_01.py的运行结果如下:

 

 可以看出,运行import_test_01.py时,调用的 test_01模块中print(__name__)的这句代码结果此时是模块名test_01, 此时test_01模块中,__name__ == “main"不再成立,它下面的代码就不会被执行

 

posted @ 2020-09-11 19:46  candidjuan  阅读(131)  评论(0)    收藏  举报