Python模块中"if __name__ == '__main__': "的含义

参考资料:点击链接

这个东西的好处就是,别人调用时(你并非是主程序入口)后面的东西不运行,自己命令行执行时(你是主程序入口)后面的东西运行。故可以作为测试用。

--------------------------------------------------------------------------------

test1.py

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

' a test1 module '

def addFunc(a,b):  
    return a+b  

if __name__ == '__main__':  
    print('test1计算结果:',addFunc(1,1))

test2.py

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

' a test module '

import test1

print('调用test2模块执行的结果是:',test1.addFunc(12,23))

当运行test2.py

C:\work>python test2.py
调用test2模块执行的结果是: 35,
#因为此时程序执行的main入口是test2,所以不会执行test1.py中的print('test1计算结果:',addFunc(1,1)),
#而仅仅是调用test1模块中的addFunc(a,b)函数

猜你喜欢

转载自blog.csdn.net/wbdxz/article/details/81032869