目录
前言
循环语句允许我们执行多次执行一个语句或语句组的语句。python提供了两种循环结构,
- for循环
- while循环
一、for循环语句
for循环用于迭代序列的元素(如字符串、元组或列表)或其他可迭代对象。
for循环语句完整书写格式:
for 临时变量 in 可迭代对象:
循环体语句块
else: # else语句可省略,可迭代对象遍历完才会执行该语句
语句块
for循环语句的理解:
可迭代对象可以想象成一个箱子(容器),箱子里装着各种各样的球(数据),我们从箱子里拿出一个球给临时变量,让后通过临时变量对这个球进行展示(print),直到每个球都展示完,循环结束,循环结束会执行else语句。
以上内容可以编写成如下代码:
for tmp in [1,2,3,4]:
print(f'拿到的数据是:{tmp}')
else:
print('所有的数据都遍历完了,执行我这个else语句了')
循环结束后临时变量不会被清除,保留最后一次循环时赋予的值。
for循环流程图:
二、while循环语句
当变量满足某个条件的时候,程序重复执行某个语句,此时可以使用while循环。
while循环语句完整书写格式:
while 条件表达式:
循环体语句块(条件表达式为True时执行的语句)
else: # else语句可以省略
语句块(条件表达式为False时执行的语句)
while语句与if语句类似都是当条件表达式为True时执行。不同的是,while语句执行完语句块后会再次判断条件表达式是否为True,如果为True再次执行语句块。循环往复,直到条件表达式为False,循环结束。如果有else语句,则会执行else语句,执行完else语句,循环结束。
使用while语句时,如果条件表达式一直为True,那么循环就会一直执行,也就是死循环。
count = 0
while count < 5:
print(count)
count = count + 1
else:
print(f'循环体结束了,此时count的值是{count}')
当count小于5的时候打印count的值,并且让count自加1.count等于5时count<5的结果为False此时条件不满足,执行else语句。
流程图:
四、循环嵌套
与if语句嵌套类似,循环语句也可以进行嵌套。
可以使用for循环套for循环或while循环,也可以使用while循环套for循环或while循环,嵌套层次不限。但是一定要注意循环嵌套语句的逐层缩进,保持同级缩进相同。
通过python循环实现九九乘法表,巩固下循环语句以及循环嵌套的使用:
五、循环控制语句
循环控制语句用来影响循环的进程,能够结束本次循环提前进入下次循环,也可以提前结束循环。循环控制语句有两个:
- continue
- break
5.1 continue语句
continue语句用于结束本次循环,重新进入到下次循环。请看示例:
for i in [1,2,3,4]:
if i == 2:
continue
print(i)
从执行结果看,2没有被打印出来。原因是,当程序执行到i=2的时候执行了continue语句,continue语句会结束本次循环进行下次循环,于是没有执行后面的print语句,所以2没有被打印出来。i等于1、3、4的时候都没有执行continue语句,所以能够执行print语句,于是1、3、4被打印出来了。
5.2 break语句
break语句用于结束循环。请看示例:
for i in [1,2,3,4]:
if i == 2:
break
print(i)
由结果看,程序只进行了一次循环。原因是,当i等于2的时候程序执行了break语句,break语句会结束循环,所以2、3、4都没有被打印。
注意:如果执行了break语句,循环的else语句不会再执行!!!
总结
本节主要讲解了for-else循环语句、while-else循环语句、循环语句的嵌套和循环控制语句。并通过python编写了一个九九乘法表实战循环语句的使用。如果有疑问欢迎留言讨论。
更多内容请参阅:https://github.com/mling17/material/blob/main/python%E5%9F%BA%E7%A1%80.ipynb