Python中的__name__在Python中有两种用法:
1. 如果模块是被导入,__name__的值为模块名字
2. 如果模块是被直接执行,__name__的值为'__main__'
Py1.py
代码如下:
#!/usr/bin/env <a href="https://www.gaodaima.com/tag/python" title="查看更多关于python的文章" target="_blank">python</a> def test(): print '__name__ = ',__name__ if __name__ == '__main__': test()
www#gaodaima.com来源gaodai.ma#com搞#代!码网搞代码
Py2.py
代码如下:
#!/usr/bin/env python import Py1.py def test(): print '__name__ = ',__name__ if __name__ == '__main__': test() print ‘Py1.py __name__ = ',Py1.__name__
执行结果:
代码如下:
__name__=__main__ Py1.py __name__=Py1
通过结果可以知道,Py2.py直接执行,那么内建变量__name__的值为__main__,否则为模块的名字,通过这个特性可以在if语句里面添加测试代码,可以提高减少BUG,提高程序的健壮性。
代码如下:
if __name__ == '__main__': test()
来源:搞代码网:原文地址:https://www.gaodaima.com