python中if __name__ == '__main__': 的解析
Python脚本和模块都是一个以.py结束的文件,那程序是如何判断一个.py文件是作为脚本还是模块呢?关键是一个名为__name__的变量,如果它的值是__main__,则不能作为模块,只能作为脚本直接运行。所以在很多脚本的最后都有一段类似下面的语句,限制只能以脚本方式运行,不作为模块:
if __name__ == '__main__': main()
python应用模块的自测试程序都放在 if __name__ == "__main__" 条件块下是多么方便。
def test(): print ("test is running") if __name__ == "__main__": print ("test main is working !") if __name__ == "test": print ("test is invorked")
C:\Python34\python.exe D:/mypython/lzt-lab/test1.py test main is working !
执行test()方法效果如图:
通过这个例子,python应用模块的自测试程序都放在 if __name__ == "__main__" 条件块下是多么方便。