if name == ‘main’)的方法论
该方法主要体现在,自行调用其他模块时筛掉不需要被执行的或者重复的code
创建一个名字为name.py的文件
def printHello():
print('hello world!')
print('__name__:',__name__)
if __name__ == '__main__':
printHello() #调用printHello函数
print('此时才执行')
printHello()
执行结果
再创建一个名字为import_name.py的文件,导入name模块
import name
执行结果为
我们会发现该段代码未能执行
if __name__ == '__main__':
printHello() #调用printHello函数
print('此时才执行')
个人认为if语句的作用是:判断是否,是当前文件在执行本文件的代码。如果是的话,就会执行所有的代码,如果是被其他py文件调用本模块则不会执行if__name__ == 'main’下的代码。
总结:他保证模块文件既能在模块文件中单独执行,又能保证它被其他py文件执行时,相应的函数不被重复执行。
#不喜勿喷,有问题留言讨论,我改正