1. 如果模块是被导入,name的值为模块名字
2. 如果模块是被直接执行,name的值为'main'
Py1.py
复制代码 代码如下:
def test():
print 'name = ',name
if name == 'main':
test()
Py2.py
复制代码 代码如下:
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()
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8