龙空技术网

一个实例理解Python中的if __name__ ==“__main__”

夏暖 121

前言:

眼前姐妹们对“python的namemain”大约比较珍视,你们都需要了解一些“python的namemain”的相关内容。那么小编同时在网上网罗了一些对于“python的namemain””的相关资讯,希望咱们能喜欢,看官们一起来学习一下吧!

事实上'__main__'是一个作用域的名称,当在脚本中读取、执行、交互时,模块的__name__等于'__main__'。

一个实例让你理解Python中的__name__及__main__的关系

#一个名为test的py文件a = __name__print(a)#输出结果为__main__
#一个名为test_2的py文件(这里调用上面那个test.py)import testtest.a#输出结果为test
这里第一个test文件可以理解为打印出脚本自身的模块名称,但由于(在自身调用会显示__main__)这个机制他并不会显示出自身模块名称。也就是说如果我在test中调用__name__他的结果是__main__。但当我们在test_2中调用test文件,则会显示模块名称(即文件名称),这里为test。

那么if __name__ == "__main__"的含义就不言而喻,就是防止其他脚本调用该模块。

如果还不是很理解他们两之间的关系,我们就以更通俗的说发来介绍:

小明看着镜子里面的自己:小明认识镜子里面的人是自己

(也就是 __name__ == "__main__",小明知道镜子里面的人是自己)

而小明的朋友看见小明时:小明的朋友也认识眼前的人,知道他叫小明

(也就是当他被其他脚本调用时会显示出被调用脚本的模块名称,而不是main,就是说小明的朋友看见小明以后不会说看见了自己,而是会喊出他的名字“嗨,小明”)


标签: #python的namemain