python是一种解释型脚本语言,不同于C,C++等编译型语言,python运行是从模块顶行开始,逐行翻译执行。
1、__name__是python的一个内置属性,记录了一个字符串
- 若在当前文件,__name__是__main__字符串
- 若被其他文件调用时,__name__是自己的真实名称
例如:
print_test.py
print("print")
print("print_test.py中打印__name__ ",__name__)
if __name__ == "__main__":
print(__name__)
运行print_test.py
name.py
import print_test
print("name.py调用===========")
print("name.py中打印 print_test.__name__",print_test.__name__)
print("name.py调用===========")
if __name__ == "__main__":
print(__name__)
运行name.py
2、if __name__ == "__main__":
所以if __name__ =='__main__':
下的代码只有在该脚本中执行,import到其他模块时不会执行。