while 条件:
满足条件时执行的代码1
满足条件时执行的代码2
...(省略)...
举例如下:
i = 0
while i<5:
print("i现在等于%d"%i)
i+=1
运行结果为:
i现在等于0
i现在等于1
i现在等于2
i现在等于3
i现在等于4
while循环的嵌套
类似if的嵌套,while嵌套就是:while里面还有while
while 条件1:
满足1时,执行的代码1
满足1时,执行的代码2
...(省略)...
while 条件2:
满足2时,执行的代码1
满足2时,执行的代码2
这也就是所谓的双重循环,典型的案例:打印九九乘法表
i=1
while i<=9:
j=1
while i>=j:
print("%d*%d=%-2d"%(i,j,i*j),end=" ")
j+=1
print("\n")
i+=1
运行结果如下:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
解释说明
在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。
for循环的格式
for 临时变量 in 集合容器:
满足循环执行的代码
else:
不满足循环时执行的代码
其中:else可写可不写,根据需要自行决定
name = "Se7eN_HOU"
for x in name:
print(x)
运行结果为:’S’,’e’,’7′,’e’,’N’,’_’,’H’,’O’,’U’
for循环嵌套
for循环和while循环一样也可以嵌套,还以打印九九乘法表为例演示
for i in range(1,10):
for j in range(1,10):
print("%d*%d=%-2d"%(i,j,i*j),end=" ")
if i==j:
break
print("\n")
运行效果为:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
说明:
使用场景,通常在循环中当做中断循环使用,例如我本来想做10次循环,但是到第5次的时候我就不想循环了,或者第5次不想循环了,后面4次继续循环就需要用到break和continue。
continue:跳出当前本次循环,后面的循环继续做
i = 1
while i<=10:
if i==5:
i+=1
continue
print(i)
i+=1
运行结果为:1,2,3,4,6,7,8,9,10
当i等于5的时候进入if语句,只做了自加1,continue之后的就print没有执行,但是i等于6,7,8,9,10次的循环继续执行了,所以continue只是结束当前这一次循环,后面的循环继续执行
break:结束当前所有的循环,不管后面还有几次都不执行了
i = 1
while i<=10:
if i==5:
i+=1
break
print(i)
i+=1
运行结果为:1,2,3,4
当i等于5的时候,进入if语句,执行了i+=1,之后执行break代码,直接退出循环,所以后面的,6,7,8,9,10次都不会执行了