if __name=='__main__"的作用

1.__main__的作用

我们可以经常在不同的程序和脚本中看到有这样的代码:

if __name__=='__main__':#如果在windows上启动线程池,必须要使用。
    func()

很多情况下,不使用“if __name__=='__main__':”直接去执行下面的代码,脚本也能成功执行。

那么它的作用是什么呢?

在很多程序中“if __name__=='__main__':”下面写的可能是一些测试代码。

在Python中,脚本中有“if __name__=='__main__':”,那么执行脚本就会直接运行脚本中“if __name__=='__main__':”下面执行的函数。

在其他脚本中import module1,module1中的“if __name__=='__main__':”的下面的程序不会主动触发执行。

2.实例:

if __name__=='__main__':
    print('my name is ',__name__)

  执行上面的脚本,返回:

在一个新的脚本中导入上面的脚本,返回:

import name
print('我是当前脚本的名称',__name__)
print('name.__name__ is',name.__name__)

  执行上面的脚本返回的结果是:

 可以从上面的实例中看到,将name.py在新的脚本中import之后,由于name.py的__name__返回的结果是'name',“if __name__=='__main__'”不成立,所以下面的代码不执行。

原文地址:https://www.cnblogs.com/zoe233/p/7241846.html