当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介绍一下它的作用.
每个文件都有一个内置的属性叫__name__,这个值取决于该文件如何执行。如果这个文件是直接执行的,__name__的值等于__main__;如果这个文件是被别的文件调用的,那么__name__值就是该文件的名字(不含后缀)。
结果:
每个文件都有一个内置的属性叫__name__,这个值取决于该文件如何执行。如果这个文件是直接执行的,__name__的值等于__main__;如果这个文件是被别的文件调用的,那么__name__值就是该文件的名字(不含后缀)。
python在执行文件时,是没有主函数的,就是直接从上向下执行(找没空格的语句,不包括函数),所以在文件中出现if __name__ == '__main__':就是要判断该文件是不是直接执行的,如果是直接执行那么一般开始指定要执行的函数了
//
#fileA.py
def printA():
return __name__
//
#fileB.py
import fileA
def printB():
print 'fileB value:'+ __name__
print 'fileA value:'+ fileA.printA()
if __name__ == '__main__':
printB()
//
结果:
fileB value:__main__
fileA value:fileA
参考:《Python核心编程》3.4.1