if __name__ == '__main__'
分类:Python
在Python中,我们经常可以看到一个if __name__ == '__main__'
的语句,或者说所有Python模块都有这段内置代码,__name__
属性表示运行的Python文件的模块名称(文件名)。
其作用类似于C语言里的预处理宏定义,主要有两个作用:调试;导出。
1.调试
当运行该Python文件的时候,文件的__name__
属性值当然是主函数入口,即:__main__
,所以这条判断语句的返回值为True
,执行后面的代码。因此,可以在改语句后面加入调试代码,当该模块作为debug版运行的时候,用作调试。
2.导出
Python文件还有一个重要作用就是做为其他文件的导入模块,当其他文件需要导入该Python模块时,则不需要执行后面的代码。此时__name__
属性值不等于__main__
,所以该语句的返回值为False
,仅仅执行前面的功能代码。这样就实现了作为导出模块的功能。
如果有收获,可以请我喝杯咖啡!