一、Python是一门解释性脚本语言,其中定义的main()函数只有当该Python脚本直接运行时才会执行;如果Python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。
二、if _name_ == '_main_'的作用:使脚本模块同时可导入和可执行,_name_是系统内置变量,代表所在模块名字,也即所在文件名。
三、代码示例
定义两个py文件print_main_function.py和print_main_module.py
- print_main_function.py
import datetime
print('Hello World')
print('Time is',datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
print('_name_ value:',_name_)
def main():
print('This is main function.')
if _name_ == '_main_':
main() #调用上面的main()
执行结果:
*该程序执行时,name值为函数main,main()函数被执行
main3.png
main4.png
- print_main_module.py
import print_main_function
print('将print_main_function.py作为module导入执行')
执行结果:
main2.png
*该程序执行时,name值为模块print_main_function.py,main()函数未被执行
网友评论