if__name__=='__main__'

在学习Python基础语法的时候,在程序最后经常会遇到这句话,这里简单解释下它的意义。总地来说,这句代码的作用是既能保证当前的.py文件直接运行,也能保证其可以作为模块被其他.py文件导入。

def getName():
    print(__name__)
if __name__ == '__main__':
    getName()
//输出__main__

这说明,__name__本身是一个变量,但它不是一般的变量。实际上,它是在程序执行前就创建并赋值的,而赋值的机制是这里的关键。在当前程序被当作主程序被执行的时候,__name__自动被赋值为固定的字符串__main__;当它作为模块被其他文件调用的时候,自动被赋值为模块所在的文件名。