if __name__ == '__main__':
一个python的文件有两种使用的方法,第一是直接作为脚本执行,第二是import到其他的python脚本中被调用(模块重用)执行.
if __name__ == '__main__': 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他脚本中是不会被执行的.
例:test1.py
test_import.py
只执行了if __name__ == '__main__': 上面的代码。而且优先执行。
原理:
每个python模块(python文件,也就是此处的test.py和import_test.py)都包含内置的变量__name__。当当做脚本直接执行时,__name__==“__main__”,满足if条件
如果py文件被调用,__name__==“__test__”,不满足if条件。所有其后的代码不被执行。
运用:
我觉得,加入if..,方便不需import的情况下,测试本文件中的函数。import下,又不会出现测试代码。