知行编程网知行编程网  2022-09-21 22:30 知行编程网 隐藏边栏  23 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于Python中的main函数解析的相关知识,包括python中main函数,以及Python中函数这些编程知识,希望对大家有参考作用。

Python中的主函数分析

Python是一种比较灵活的解释型脚本语言,其中定义的main()函数只有在Python脚本直接作为执行器时才会执行;

python 脚本作为模块导入时,其中的 main() 函数将不会被执行。

这是由于两方面原因:

一方面,main函数是所有执行程序的入口;

另一方面,python 的解释器按顺序执行脚本,不会调用任何不属于程序本身的代码和函数。

需要补充的一点是,如果作为模块或库导入到程序中,会直接成为代码的一部分。

下面通过程序可以更好的理解main函数的作用,这里我们写了两个程序print_main_function.py和print_main_module.py


print_main_function.py

# import os
# import time
import datetime
print('Hello World!')
print('Time is ', datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S %A'))
print('__name__ value: ', __name__)
def main():
    print('this message is from main function')
if __name__ == '__main__':
    main()
    # print(__name__)


print_main_module.py


import print_main_function


print("Done!")

单独运行print_main_function.py程序,结果如下

Python中的主函数分析

运行print_main_module.py程序(将print_main_function.py作为module引入执行),结果如下

Python中的主函数分析

对比两个程序的运行结果可以发现,当直接运行包含main函数的程序时,会执行main函数,程序的__name__变量的值为'__main__'。

当包含main函数的程序作为模块导入时,模块程序(print_main_function.py)对应的__name__变量值就是模块对应的函数名,所以模块程序中的main函数(print_main_function.py)会不被执行。

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享