什么场景下会有main函数?
当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。
main函数的作用?
__name__ == '__main__'
是Python的main函数
入口。并非说,加入这句才能使用python xxx.py
来执行,而是说,这里可以判断,当前是否是直接被python直接调用执行。
main为什么只有文件当作执行程序的时候才会被执行呢?
这是由于两方面原因,一方面,main函数是所有执行程序的入口;另一方面,python的解释器是顺序执行脚本的并且不会调用任何不属于程序本身的代码和函数,需要补充说明的一点是,如果是被作为一个模块或库import到程序中,则会直接成为代码的一部分。
参考代码:
文件:main_function.py
1 import datetime 2 3 print('Hello World!') 4 print('Time is ', datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S %A')) 5 6 7 def main(): 8 print('this message is from main function') 9 10 11 if __name__ == '__main__': 12 main()
执行结果:
➜ main git:(master) ✗ py main_function.py Hello World! Time is 2019-07-22 09:50:50 Monday this message is from main function
文件二:test_main.py
import main_function print("Done!")
执行结果:
➜ main git:(master) ✗ py test_main.py Hello World! Time is 2019-07-22 09:52:00 Monday Done!
作者:虚生 出处:https://www.cnblogs.com/dylancao/ 以音频和传感器算法为核心的智能可穿戴产品解决方案提供商 ,提供可穿戴智能软硬件解决方案的设计,开发和咨询服务。 勾搭热线:邮箱:1173496664@qq.com weixin:18019245820 市场技术对接群:347609188 |