Python中__name__的使用实例
1.如果模块是被导入,__name__的值为模块名字
2.如果模块是被直接执行,__name__的值为'__main__'
Py1.py
#!/usr/bin/envpython deftest(): print'__name__=',__name__ if__name__=='__main__': test()
Py2.py
#!/usr/bin/envpython importPy1.py deftest(): 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()