python 中的循环行为
Loop behavior in python
for i in range(10):
if i == 2:
i += 2
print(i,end=",")
我要打印 0,1,4,5,6,7,8,9
但它正在打印 0、1、4、3、4、5、6、7、8、9。
有什么办法可以解决这个问题吗??
使用 while-loop:
i = 0
while i < 10:
if i == 2:
i += 2
print(i, end=",")
i += 1
for for-loop 将在每次迭代中重新绑定循环变量。 while-loop 给你更多的控制权。
应该这样做:
for i in range(8):
if i >= 2 :
i += 2
print(i,end=",")
根据整体逻辑,这也可以解决问题。
for i in range(10):
if i not in [2, 3]:
print(i,end=",")
for i in range(10):
if i == 2:
i += 2
print(i,end=",")
我要打印 0,1,4,5,6,7,8,9 但它正在打印 0、1、4、3、4、5、6、7、8、9。 有什么办法可以解决这个问题吗??
使用 while-loop:
i = 0
while i < 10:
if i == 2:
i += 2
print(i, end=",")
i += 1
for for-loop 将在每次迭代中重新绑定循环变量。 while-loop 给你更多的控制权。
应该这样做:
for i in range(8):
if i >= 2 :
i += 2
print(i,end=",")
根据整体逻辑,这也可以解决问题。
for i in range(10):
if i not in [2, 3]:
print(i,end=",")