Python编程之顺序执行与程序的主入口详解
前言
本章将会讲解Python编程中的顺序执行与程序的主入口。
1.顺序执行(了解)
Python代码在执行过程中,遵循下面的基本原则:
- 普通语句,直接执行;
- 碰到函数,将函数体载入内存,并不直接执行
- 碰到类,执行类内部的普通语句,但是类的方法只载入,不执行
- 碰到if、for等控制语句,按相应控制流程执行
- 碰到@,break,continue等,按规定语法执行
- 碰到函数、方法调用等,转而执行函数内部代码,执行完毕继续执行原有顺序代码
# #对于普通语句,代码从上之下执行
# print("hello world")
# print("hello world")
# print("hello world")
#此时代码从上之下执行,但是函数只有在调用时才会执行
# def func_name():
# print("i am func name")
# func_name()
# class MyClass:
# print("i am myclass")
#
# def my_text(self):
# print("i am mytest ")
#
#
# d = MyClass()
# d.my_test()2.程序主入口(熟悉)
一个 .py,除了可以被直接运行外,还可以作为模块, 被其他 .py文件导入。不管是直接运行还是被导 入,.py 文件的最顶层代码都会被运行( Python 用缩 进来区分代码层次)。 但是当一个 .py 文件作为模块被导入时,我们可能不 希望一部分代码被运行。那么就可以将这部分代码的 调用写在主程序中。

def func_one():
print("func_one")
def func_two():
print("func_two")
func_one()
#程序的主入口
if __name__ == '__main__':
func_two()#当我导入了demo19之后,运行demo13的话,会执行demo3内部的代码 import demo19 #执行demo4,竟然只打印输出了func_one
再来解释下
所以上面代码 if 的意思就是:如果运行的程序是你自己,那么就 print....
假设运行的是 xiaoming.py,那么就会执行主函数
假设运行的是 xiaohong.py,即使 xiaohong 导入了 xiaoming,也不会执行 xiaoming.py 里面的主函数(main 函数)
是否一定需要执行入口(主函数)
不一定
假设没有主函数,那么运行 xiaoming.py 时,就会至上而下,逐行运行 xiaoming.py 的所有代码
执行入口的意义
将业务代码写在主函数上面,主函数用来调用有业务代码,代码结构整洁
向 Java、C、Golang 看齐,他们都是要求一个程序必须有一个主执行入口才能正确运行
总结
到此这篇关于Python编程之顺序执行与程序的主入口的文章就介绍到这了,更多相关Python顺序执行与程序主入口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例
这篇文章主要介绍了Python实现读取SQLServer数据并插入到MongoDB数据库的方法,涉及Python同时进行SQLServer与MongoDB数据库的连接、查询、读取、写入等相关操作实现技巧,需要的朋友可以参考下2018-06-06
python+selenium行为链登录12306(滑动验证码滑块)
这篇文章主要介绍了python+selenium行为链登录12306,使用python网络爬虫登录12306,下面小编为大家分享一段代码,具有一定的参考价值,需要的小伙伴可以参考一下2022-02-02
Python Numpy运行报错IndexError与形状不匹配的问题解决办法
在使用Numpy进行数据处理和科学计算时,IndexError和形状不匹配(Shape Mismatch)是常见的错误类型,这些错误通常发生在数组索引操作、数组运算或数组重塑时,本文将通过一个具体的例子来详细分析这些错误的原因和解决办法,需要的朋友可以参考下2024-07-07
vscode搭建python Django网站开发环境的示例
本文主要介绍了vscode搭建python Django网站开发环境的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-02-02


最新评论