零基础学Python(9)— 流程控制语句(下)
前言:Hello大家好,我是小哥谈。流程控制语句是编程语言中用于控制程序执行流程的语句,本节课就带大家认识下Python语言中常见的流程控制语句!~🌈
目录
🚀1.while循环
🚀2.for循环
🚀3.循环嵌套
🚀4.跳转语句
🚀5.pass空语句
🚀1.while循环
while循环是通过一个条件来控制是否要继续反复执行循环体中的语句。
语法如下:
while 条件表达式:
循环体
说明:循环体是指一组被重复执行的语句。
当条件表达式的返回值为真时,则执行循环体中的语句,执行完毕后,重新判断条件表达式的返回值,直到表达式返回的结果为假时,退出循环。while循环语句的执行流程如下图所示。
我们用现实生活中的例子来理解while循环的执行流程。在体育课上,体育老师要求同学们沿着环形操场跑圈,要求当听到老师吹的哨子声时就停下来。同学们每跑一圈,可能会请求一次老师吹哨子。如果老师吹哨子,则停下来,即循环结束,否则继续跑步,即执行循环。
注意:在使用while循环语句时,一定不要忘记添加将循环条件改变为False的代码,否则,将产生死循环。
🚀2.for循环
for循环是一个依次重复执行的循环。通常适用于枚举或遍历序列,以及迭代对象中的元素。
语法如下:
for 迭代变量 in 对象:
循环体
其中,迭代变量用于保存读取出的值;对象为要遍历或迭代的对象,该对象可以是任何有序的序列对象,如字符串、列表和元组等;循环体为一组被重复执行的语句。
for循环语句的执行流程如下图所示:
我们用现实生活中的例子来理解for循环的执行流程。在体育课上,体育老师要求同学们排队进行踢毽球测试,每个同学一次机会,毽球落地则换另一个同学,直到全部同学都测试完毕,即循环结束。
案例1:进行数值循环
在使用for循环时,最基本的应用就是进行数值循环。例如,想要实现从1到100的累加,可以通过下面的代码实现:
print("计算1+2+3+……+100的结果为:")
result = 0 # 保存累加结果的变量
for i in range(101):
result += i # 实现累加功能
print(result) # 在循环结束时输出结果
在上面的代码中,使用了range()函数,该函数是Python内置的函数,用于生成一系列连续的整数,多用于for循环语句中。其语法格式如下:
range(start,end,step)
参数说明:
start:用于指定计数的起始值,可以省略,如果省略则从0开始。
end:用于指定计数的结束值(但不包括该值,如range(7),则得到的值为0~6,不包括7),不能省略。当range()函数中只有一个参数时,即表示指定计数的结束值。
step:用于指定步长,即两个数之间的间隔,可以省略,如果省略则表示步长为1。例如,range(1,7)将得到1、2、3、4、5、6。
注意:在使用range()函数时,如果只有一个参数,那么表示指定的是end;如果有两个参数,则表示指定的是start和end;如果3个参数都存在时,最后一个参数才表示步长。
例如,使用下面的for循环语句,将输出10以内的所有奇数:
for i in range(1,10,2):
print(i,end = ' ')
得到的结果如下:
1 3 5 7 9
案例2:遍历字符串
使用for循环语句除了可以循环数值,还可以逐个遍历字符串,例如,下面的代码可以将横向显示的字符串转换为纵向显示:
string = '腹有读书气自华'
print(string) # 横向显示
for ch in string:
print(ch) # 纵向显示
上面代码的运行结果如下图所示。
说明:for循环语句还可以用于迭代(遍历)列表、元组、集合和字典等。
🚀3.循环嵌套
在Python中,允许在一个循环体中嵌入另一个循环,这称为循环嵌套。例如,在电影院找座位号,需要知道第几排第几列才能准确找到自己的座位号,假如寻找如下图所示的在第二排第三列座位号,首先寻找第二排,然后在第二排再寻找第三列,这个寻找座位的过程就类似循环嵌套。
在Python中,for循环和while循环都可以进行循环嵌套。
例如,在while循环中套用while循环的格式如下:
while 条件表达式1:
while 条件表达式2:
循环体2
循环体1
在for循环中套用for循环的格式如下:
for 迭代变量1 in 对象1:
for 迭代变量2 in 对象2:
循环体2
循环体1
在while循环中套用for循环的格式如下:
while 条件表达式:
for 迭代变量 in 对象:
循环体2
循环体1
在for循环中套用while循环的格式如下:
for 迭代变量 in 对象:
while 条件表达式:
循环体2
循环体1
除了上面介绍的4种嵌套格式外,还可以实现更多层的嵌套,因为与上面的嵌套方法类似,这里就不再一一列出了。
🚀4.跳转语句
当循环条件一直满足时,程序将会一直执行下去,就像一辆迷路的车,在某个地方不停地转圈。如果希望在中间离开循环,也就是for循环结束重复之前,或者while循环找到结束条件之前。有两种方法来做到:
1.使用continue语句直接跳到循环的下一次迭代。
2.使用break完全中止循环。
🍀(1)break语句
break语句可以终止当前的循环,包括while和for在内的所有控制语句。以独自一人沿着操场跑步为例,原计划跑10圈。可是在跑到第2圈的时候,遇到自己的女神或者男神,于是果断停下来,终止跑步,这就相当于使用了break语句提前终止了循环。break语句的语法比较简单,只需要在相应的while或for语句中加入即可。
说明:break语句一般会结合if语句进行搭配使用,表示在某种条件下,跳出循环。如果使用嵌套循环,break语句将跳出最内层的循环。
在while语句中使用break语句的形式如下:
while 条件表达式1:
执行代码
if 条件表达式2:
break
其中,条件表达式2用于判断何时调用break语句跳出循环。在while语句中使用break语句的流程如下图所示。
在for语句中使用break语句的形式如下:
for 迭代变量 in 对象:
if 条件表达式:
break
其中,条件表达式用于判断何时调用break语句跳出循环。在for语句中使用break语句的流程如下图所示。
🍀(2)continue语句
continue语句的作用没有break语句强大,它只能终止本次循环而提前进入到下一次循环中。仍然以独自一人沿着操场跑步为例,原计划跑步10圈。当跑到第2圈一半的时候,遇到自己的女神或者男神也在跑步,于是果断停下来,跑回起点等待,制造一次完美邂逅,然后从第3圈开始继续。
continue语句的语法比较简单,只需要在相应的while或for语句中加入即可。
说明:continue语句一般会与if语句搭配使用,表示在某种条件下,跳过当前循环的剩余语句,然后继续进行下一轮循环。如果使用嵌套循环,continue语句将只跳过最内层循环中的剩余语句。
在while语句中使用continue语句的形式如下:
while 条件表达式1:
执行代码
if 条件表达式2:
continue
其中,条件表达式2用于判断何时调用continue语句跳出循环。在while语句中使用continue语句的流程如下图所示。
在for语句中使用continue语句的形式如下:
for 迭代变量 in 对象:
if 条件表达式:
continue
其中,条件表达式用于判断何时调用continue语句跳出循环。在for语句中使用continue语句的流程如下图所示。
🚀5.pass空语句
在Python中还有一个pass语句,表示空语句。它不做任何事情,一般起到占位作用。例如,在应用for循环输出1~10之间(不包括10)的偶数时,在不是偶数时,应用pass语句占个位置,方便以后对不是偶数的数进行处理。代码如下:
for i in range(1,10):
if i%2 == 0: # 判断是否为偶数
print(i,end = ' ')
else: # 不是偶数
pass # 占位符,不做任何事情
程序运行结果如下:
2 4 6 8