python 中 if __name__ == '__main__' 判断的做用

假设这样一个a.py文件函数

def fun1():code

  ........string

def fun2():class

  .........import

 

if __name__=='__main__':引用

  ......#执行的一些语句程序

 

当你执行这个a.py文件时, __name__ == '__main__'为真,后面的语句能够执行im

当你在别的文件中import a文件,当作模块使用时,__name__ == '__main__'为假,后面的语句不执行了,只有前面定义的函数其做用.word

若是没有这句话话,你在b.py中引用a的话,那些执行语句也会执行。假设你只想引用a中的函数,那你就得加这句话。文件

因此,这句话是为了让你把一个文件既能够当作可执行的,有能够当作可引入的模块。Python中当你引用一个模块时,它会执行全部的语句,你只想要函数的话,就用那句话挡住它不要往下找,只把函数找出来就好。

每一个模块都有内置属性__name__,当是执行程序时,是‘__main__’,是导入模块时,是'a' 就是模块的名字。

相关文章
相关标签/搜索