3.流程控制语句
一、简介
Python代码在执行时是按照自上向下顺序执行的。
通过流程控制语句,可以改变程序的执行顺序,也可以让指定的程序反复执行多次
流程控制语句分成两大类:条件判断语句,循环语句
二、条件判断语句
2.1 条件判断语句(if语句)
语法:
if 条件表达式 : 代码块
执行的流程:if语句在执行时,会先对条件表达式进行求值判断,
-如果为True,则执行if后的语句
-如果为False,则不执行
默认情况下,if语句只会控制紧随其后的那条语句,如果希望if可以控制多条语句,则可以在if后跟着一个码块
代码块:
代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执行
代码块就是一种为代码分组的机制
如果要编写代码块,语句就不能紧随在:后边,而是要写在下一行
代码块以缩进开始,直到代码恢复到之前的缩进级别时结束
鲁迅说过:
世上本来没有路,走的人多了自然就有了!
xxxx
yyyy....
缩进有两种方式,一种是使用tab键,一种是使用空格(四个)
Python的官方文档中推荐我们使用空格来缩进
Python代码中使用的缩进方式必须统一
"translate_tabs_to_spaces": true,
2.2 if-else语句:
语法:
if 条件表达式 : 代码块 else : 代码块
执行流程:
if-else语句在执行时,先对if后的条件表达式进行求值判断
如果为True,则执行if后的代码块
如果为False,则执行else后的代码块
2.3 if-elif-else语句
语法:
if 条件表达式 : 代码块 elif 条件表达式 : 代码块 elif 条件表达式 : 代码块 elif 条件表达式 : 代码块 else : 代码块
执行流程:
if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
如果表达式的结果为True,则执行当前代码块,然后语句结束
如果表达式的结果为False,则继续向下判断,直到找到True为止
如果所有的表达式都是False,则执行else后的代码块
if-elif-else中只会有一个代码块会执行
三、循环语句
循环语句可以使指定的代码块重复指定的次数
在Python中构造循环结构有两种做法,一种是for-in
循环,一种是while
循环
3.1 While循环
语法:
while 条件表达式 : 代码块
else : 代码块
执行流程:
while语句在执行时,会先对while后的条件表达式进行求值判断,
如果判断结果为True,则执行循环体(代码块),
循环体执行完毕,继续对条件表达式进行求值判断,以此类推,
直到判断结果为False,则循环终止,如果循环有对应的else,则执行else后的代码块
条件表达式恒为True的循环语句,称为死循环,它会一直运行,慎用!
while True : print('hello')
防止写出死循环的方法:循环的三个要件(表达式)
初始化表达式,通过初始化表达式初始化一个变量 i = 0 条件表达式,条件表达式用来设置循环执行的条件 while i < 10 : print(i) # 更新表达式,修改初始化变量的值 i += 1
3.2 for-in循环
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for 循环 适用于 已知循环次数 的循环,所以后面跟的是次数或区间,到达指定次数就停止。
for循环的一般格式如下:
for <variable> in <sequence>: <statements> else: <statements>
3.3 break、continue
break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。