python编程中的if name == 'main': 的做用和原理python
在大多数编排得好一点的脚本或者程序里面都有这段if name == 'main': ,虽然一直知道他的做用,可是一直比较模糊,收集资料详细理解以后与你们分享。编程
** 一、这段代码的功能**import
一个python的文件有两种使用的方法,第一是直接做为脚本执行,第二是import到其余的python脚本中被调用(模块重用)执行。所以if name == 'main': 的做用就是控制这两种状况执行代码的过程,在if name == 'main': 下的代码只有在第一种状况下(即文件做为脚本直接执行)才会被执行,而import到其余脚本中是不会被执行的。变量
** 二、运行的原理**原理
每一个python模块都包含一个内置的变量,即__name__,当运行模块(.py文件)被执行的时候,__name__等于文件名(包含了后缀.py);若是import到其余模块中,则__name__等于模块名称(不包含后缀.py)。而“main”等于当前执行文件的名称(包含了后缀.py)。进而当模块被直接执行时,name == 'main'结果为真。程序