欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python中if __name__ == '__main__':的用法

程序员文章站 2022-03-03 10:27:17
...

python中if __name__ == '__main__':的用法

作为脚本直接运行

直接执行含if name == ‘main’:语句会将if语句中的代码执行。

  • 创建test.py文件,代码如下:
print('A中的__name__值为{}'.format(__name__))
if __name__=='__main__':
	print('hello world')
  • 直接运行(python test.py),结果如下:
A中的__name__值为__main__
hello world

作为模块被其它脚本导入

作为模块被其它脚本导入时,if语句中的代码不会被执行。

  • 创建新脚本:
import test
print('ceshi包中的__name__为:{}'.format(__name__))
  • 执行新脚本:
A中的__name__值为test
ceshi包中的__name__为:__main__

两个脚本文件应在同一文件夹下才能被导入,此时if语句中的代码不会被执行

运行原理

当哪个脚本被执行时,该脚本的__name__就是__main__,所以直接运行test脚本,if语句会被执行。当脚本ceshi用import将test导入时,A中的__name__值为test(见ceshi脚本代码执行结果),因此test脚本中__name__!= main,因此if语句后面内容不会被执行。

相关标签: python语言