if name == 'main’一个模块的函数导入另一个模块,避免其输出
1.如这个简单的与门函数(and_gate)
在这个py文件里,模块被执行的时候,直接运行.py文件,则__name__的值是’main’,条件为真,就继续执行if name == ‘main’,后面的for 循环,输出函数值。
2.当导入其他模块时,如这个异或门函数(xor_gate)
而在import 到xor_gate.py文件后, 执行S1,s2,y的时候,即调用与门函数,与门 函数里的__name__的值就不是’main’了,所以与门 if 后面的语句为假,就不执行函数输出。而在异或门这个py文件的最后,因为是本文件,并不是导入进来的,这个__name__是等于__main__的,故继续输出异或门函数的值。
3.总结
在本文件直接运行.py文件,则__name__的值是’main’;条件为真,继续执行
而在import 一个.py文件后,其__name__的值就不是’main’了;条件为假,不执行后面的语句。
于山东科技大学
2021年8月16日 21:54