原则 :
python文件有两种使用方式,而if name"main": 是用来控制py文件的执行过程:
**情况1(图1),本文件直接执行 : if name"main" 上方+下方 两部分的代码块都被执行
情况2(图2),被调用到其他p文件中执行,往往都是import方式 :只执行if name==“__main__上方代码块,下方代码块不执行”**
图1
图2
栗子1
如下文件name_main01.py内容 + 其在本地直接执行的输出
这里符合前面说的情况1 : if name"main"上方 + 下方 的代码块都被执行
如下是name_main01被导入到其他文件(import_nameMain.py)中执行时的输出:
这里name_main01.py作为被导入文件,符合前面说的情况2:只执行if name"main"上方的代码块
栗子2
如下文件name_main02.py在本地执行,输出符合情况1
文件name_main02.py被导入到其他文件(import_nameMain.py)中执行,输出符合情况2
注意如下代码运行顺序
class NameMain(object):
print("--1--")
def test(self):
print("Bonjour le monde")
if __name__ == "__main__":
print("2---Hello world!")
print("-------3------------")