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