6 if __name__ == '__main__'
【.py文件执行过程示例】
python可执行文件,即以 .py 或 .pyw为后缀的文件中,没有类似于C/C++ 的main函数。【注】.pyw 在Windows环境下表明这是一个GUI程序文件,以.pyw为后缀,执行时不会显示控制台窗体。
python解释器,遇到代码段即执行。以一段代码执行过程为例:
1 import sys 2 from math import * 3 4 def say_hello(): 5 print('say_hello') 6 7 print('good morning') 8 9 if __name__ == '__main__': 10 print('name = ',__name__) #使用逗号会在逗号之后的字符串之前添加一个空格
python name.py 执行过程如下:
1-导入 sys 导入math
2-定义 say_hello()程序,猜测解析到此处时,在内存中生成函数
3-执行print()代码
4-执行 if 段代码
【通俗的理解】:
模块被直接执行时__name__ == '__main__' ; 模块被导入其它文件时,__name__ == '模块文件名'
if __name__ == '__main__': 最终结果:
当.py文件被直接运行时,if __name__ == '__main__'之下的代码块将被运行;当.py文件以模块形式被导入时,if __name__ == '__main__'之下的代码块不被运行。
【用途】
文件当中的测试代码:
1 # 模块文件 mo.py 2 3 def func_a(): 4 '''函数 func_a 函数体...''' 5 6 def func_b(): 7 ''‘’函数 func_b 函数体...''' 8 9 def test(): 10 '''测试函数函数体...''' 11 12 if __name__ = '__main__': 13 test()
只有在直接执行模块时,执行测试代码,当作为模块导入时,测试代码不会执行。

浙公网安备 33010602011771号