先看第一段代码:
for i in range(5):
print(i)
if i==1:
i=i-1
print("y")
结果:
0
1
y
2
3
4
这段代码按理说应该成为死循环,可是并没有,for循环依旧只执行了5次。
第二段代码:
array=[3,4,5]
for i in range(len(array)):
array.append(i)
print(i)
print(array)
结果:
0
1
2
[3, 4, 5, 0, 1, 2]
并没有因为array的增加而增加for循环次数。
以上两端代码说明了在python的for循环中,循环次数是初始写好的,无法通过改变变量而改变循环次数,若需要改变循环次数可以使用while
c=True
i=1
while(i<3):
print(i)
if i==1 and c:
i=i-1
c=False
i+=1
结果:
1
1
2
array=[3,4,5]
i=0
while(i<len(array)):
array.append(i)
print(i)
i+=1
if i>5:
break
print(array)
结果:
0
1
2
3
4
5
[3, 4, 5, 0, 1, 2, 3, 4, 5]