Python 有两种循环语句:while 循环和 for 循环。
while 循环
1.它的语法结构结构如下:
while 条件:
某条语句或某个代码块
只要条件一直成立,那么其包含的某条语句或某个代码块就会一直被执行。
2.死循环
如果条件一直成立,那么循环体就一直被执行。
>>> while True:
... print("作为一段没有灵魂的代码,我的任务就是不断地干活!")
3.break 语句
在循环体内,一旦遇到 break 语句,Python 二话不说马上就会跳出循环体,即便这时候循环体内还有待执行的语句。
4.continue 语句
①实现跳出循环体还有另外一个语句,那就是 continue 语句。
②continue 语句也会跳出循环体,但是,它只是跳出本一轮循环,它还会回到循环体的条件判断位置,然后继续下一轮循环(如果条件还满足的话)。
③注意它和 break 语句两者的区别:
continue 语句是跳出本次循环,回到循环的开头
break 语句则是直接跳出循环体,继续执行后面的语句
5.else 语句
当循环的条件不再为真的时候,便执行 else 语句的内容。
>>> i = 1
>>> while i < 5:
... print("循环内,i 的值是", i)
... i += 1
... else:
... print("循环外,i 的值是", i)
循环内,i 的值是 1
循环内,i 的值是 2
循环内,i 的值是 3
循环内,i 的值是 4
循环外,i 的值是 5
6.嵌套
比如我们要实现打印一个九九乘法表,就可以这么实现:
>>> i = 1
>>> while i <= 9:
... j = 1
... while j <= i:
... print(j, "*", i, "=", j * i, end=" ")
... j += 1
... print()
... i += 1
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
7.while … else结构
①while中既没有break,也没有continue时:
while 条件:
条件成⽴重复执⾏的代码
else:
循环正常结束之后要执⾏的代码
②while中只有break时:
如果是break终⽌循环的情况,else下⽅缩进的代码将不执⾏。
③while中只有continue时:
因为continue是退出当前⼀次循环,继续下⼀次循环,所以该循环在continue控制下是可以正常结束的,当循环结束后,则执⾏else缩进的代码。
for循环
格式:
for 变量名 in 可迭代对象
statement(s)
可迭代对象 : 元素能够被单独提取出来的对象
1.当可迭代对象时字符串时
for n in "Fishc":
print(n)
结果:
F
i
s
h
c
2.当可迭代对象时整型时,可迭代对象必须使用range()函数
①:
for n in range(5):
print(n)
结果:
0
1
2
3
4
②:
for n in range(2,7):
print(n)
结果:
2
3
4
5
6
③:
for n in range(2,7,3):
print(n)
结果:
2
5
④:
for n in range(7,2,-3):
print(n)
结果:
7
4
3.for… else结构:
①:for中既没有break,也没有continue时:
for 变量 in 集合:
循环代码
else:
循环正常结束之后要执⾏的代码
②:for中只有break时:
如果是break终⽌循环的情况,else下⽅缩进
的代码将不执⾏。
③:for中只有continue时:
因为continue是退出当前⼀次循环,继续下⼀次循环,所以该循环在continue控制下是可以正常结束的,当循环结束后,则执⾏else缩进的代码。