在我们使用CCPP、Java编程时,都会写到一个main函数,它是程序执行代码的入口。
int main(){
printf("Helloworld");
}
Python作为一种解释型脚本语言,不需要一个main函数作为程序的入口,而是从py文件的顶行往下逐行翻译执行。这样来看,“if __name__
==__main__
:”就似乎具有一定的象征性,让阅读代码的人知道这是程序的入口。但实际上__name__
是Python的一个内置属性。
__name__
属性的含义
__name__
属性是Python的一个内置属性,记录了一个字符串。
这个字符串上的内容有两种可能:
①模块文件的文件名
②__main__
比如说现在有一个hello.py文件:
当我们在其他文件内import hello,那么hello.__name__==“hello”
为True。
若我们直接运行hello.py,那么hello.__name__==“__main__”
为True。
"if __name__==__main__:
"的作用:
理解了__name__
属性的含义,就可以利用它来编程了。
如果模块中的某些代码只需要在直接运行该模块的时候执行,而被导入的时候不需要被执行,那么我们只需要:
if __name__==__main__:
lineA
lineB
lineC