首先,介绍Python的模块:
模块基本上就是一个包含了所有用户定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。我们利用import语句导入需要使用的模块。
模块是对象,每个模块都有一个内置的变量__name__
。一个模块的__name__
的值取决于用户如何应用模块。
(1)在模块自己运行的时候,即像一个标准的程序样直接运行模块,此时,__name__
就等于一个特别缺省'__main__'
(2)而如果是被其他的模块import,则该模块的__name__
就等于模块名,也就是文件名去掉py扩展名的部分。
因此,一般在一个.py文件的代码最下面会写上
if __name__ == '__main__'
,用来判断是否是在直接运行该.py文件。
这个功能还有一个用处:调试代码的时候,在if __name__ == '__main__'
中加入一些我们的调试代码,我们可以让外部模块调用的时候不执行我们的调试代码,但是如果我们想排查问题的时候,直接执行该模块文件,调试代码能够正常运行!