Python 中的 if __name=='__main__'作用浅析

很多python的文件中会有语句if __name=='__main__':,一直不太明白。查阅了一些资料,现在明白,记录一下。
一句话解释就是,这个语句的意思是当__name__'__main__'时执行下面的语句。这里__name__表示当前文件的名字,是文件的内置变量。当执行当前文件(test.py)时,运行print (__name__)会得到结果__main__。所以如果直接执行当前文件,那么这个语句后的代码块将被执行。
但是有的时候我们会从另一个python文件调用这个文件(test.py),这时候print (__name__)会得到结果test,那么__name=='__main__'就是False,if语句后面的代码块就不会被执行。
总结来说就是if __name=='__main__':保证了后面的语句只有作为当前文件时被执行,而作为导入文件时不被执行。这个语句后面的代码一般是作为测试代码使用,这保证了当文件被调用时,测试代码不会被执行。

你可能感兴趣的:(Python 中的 if __name=='__main__'作用浅析)