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__'”不成立,所以下面的代码不执行。