一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。
说明: 每个模块都有一个__name__属性,当其值是'__main__'时,表明该模块自身在运行,否则是被引入。
看例子:
模块
#!/usr/bin/python3
# Filename: support.py
if __name__ == '__main__':
print('程序自身在运行')
else:
print('我来自另一模块')
def print_func( par ):
print ("Hello : ", par)
return
主程序
#!/usr/bin/python3
# Filename: test.py
# 导入模块
import support
if __name__ == '__main__':
print('###程序自身在运行')
else:
print('###我来自另一模块')
# 现在可以调用模块里包含的函数了
support.print_func("Runoob")
截图