python流程控制心得 python程序的流程控制_嵌套


流程控制指的是代码运行逻辑、分支走向、循环控制,是真正体现我们程序执行顺序的操作。流程控制一般分为:顺序执行、条件判断和循环控制。

今天给大家讲一下:流程控制

1 顺序执行

2 条件判断

3 循环控制

  • 3.1 while循环
  • 3.2 for循环
  • 3.3 循环的嵌套
  • 3.4 break语句
  • 3.5 continue语句

更多学习资料:


Python学习教程g.lgcoder.com

python流程控制心得 python程序的流程控制_python流程控制心得_02


1-顺序执行

Python代码在执行过程中,遵循下面的基本原则:

  • 普通语句,直接执行;
  • 碰到函数,将函数体载入内存,并不直接执行
  • 碰到类,执行类内部的普通语句,但是类的方法只载入,不执行
  • 碰到if、for等控制语句,按相应控制流程执行
  • 碰到@,break,continue等,按规定语法执行
  • 碰到函数、方法调用等,转而执行函数内部代码,执行完毕继续执行原有顺序代码

if name == 'main':

很多时候,我们经常在python程序中看到这么一行语句,这里简要解释一下:

首先, __name__ 是所有模块都会有的一个内置属性,一个模块的 __name__ 值取决于你如何调用模块。

假如你有一个 test.py 文件,如果在 a.py 文件中使用import导入这个模块 import test.py ,那么

test.py 模块的 __name__ 属性的值就是 test ,不带路径或者文件扩展名。

其实顺序执行,简单来说就是代码按照从上到下的顺序来执行。


2-条件判断

条件判断是通过一条或多条判断语句的执行结果(True或者False)来决定执行的代码块。

在Python语法中,使用 if 、 elif 和 else 三个关键字来进行条件判断。


python流程控制心得 python程序的流程控制_Python_03


if语句的一般形式如下所示


python流程控制心得 python程序的流程控制_python跳出两层for_04


条件判断的使用原则:

  • 每个条件后面要使用冒号(:)作为判断行的结尾,表示接下来是满足条件(结果为True)后要执行的语句
  • 块。
  • 除了if分支必须有,elif和else分支都可以根据情况省略。
  • 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  • 顺序判断每一个分支,任何一个分支首先被命中并执行,则其后面的所有分支被忽略,直接跳过!
  • 在Python中没有switch – case语句。

接下来看一个案例:


python流程控制心得 python程序的流程控制_python跳出两层for_05


if/else 语句可以嵌套,也就是把 if...elif...else 结构放在另外一个 if...elif...else 结构

中。

形成如下的结构:


python流程控制心得 python程序的流程控制_Python_06



3-循环控制

循环控制,就是让程序循环运行某一段代码直到满足退出的条件,才退出循环。

Python用关键字for和while来进行循环控制,但是没有其它语言的do...while语句(在Java和PHP中都有do

while)。

3.1 while循环

while循环语句的控制结构图如下所示:


python流程控制心得 python程序的流程控制_python跳出两层for_07


python流程控制心得 python程序的流程控制_条件判断_08


while的else从句:

while循环还可以增加一个else从句。

当while循环正常执行完毕,会执行else语句。注意else与while平级的缩进方式!


python流程控制心得 python程序的流程控制_条件判断_09


如果是被break等机制强制提前终止的循环,不会执行else语句。


python流程控制心得 python程序的流程控制_Python_10


3.2 for循环

虽然与while一样都是循环的关键字,但for循环通常用来遍历可迭代的对象,如一个列表或者一个字典。其一般格式如下:


python流程控制心得 python程序的流程控制_Python_11


3.3 循环的嵌套

if判断可以嵌套,while和for当然也可以嵌套。但是建议大家不要嵌套3层以上,那样的效率会很低。


python流程控制心得 python程序的流程控制_python流程控制心得_12


3.4 break语句

想在循环过程中退出循环,怎么办?用break语句!

break只能用于循环体内。其效果是直接结束并退出当前循环,剩下的未循环的工作全部被忽略和取消。

Python的break只能退出一层循环,对于多层嵌套循环,不能全部退出。


python流程控制心得 python程序的流程控制_Python_13


3.5 continue语句

与break不同,continue语句用于跳过当前循环的剩余部分代码,直接开始下一轮循环。它不会退出和终止循

环,只是提前结束当前轮次的循环。同样的,continue语句只能用在循环内。


python流程控制心得 python程序的流程控制_Python_14


python流程控制心得 python程序的流程控制_python流程控制心得_15


前面跟大家说过,python中的break只能跳出当前层的循环,无法全部跳出。那如果有这个需求怎么办?


python流程控制心得 python程序的流程控制_python跳出两层for_16


今天这里就结束了,大家有什么问题可以在评论区提出来,或是私信我哦!咱们下次见咯!