我有一个 for 循环如下:
i=0
while True:
print("i initialized as", i)
for i in range(0,3):
print ("inside for",i)
i = i + 1
print("exit from for i value is",i)
现在在 while 无限循环中有 for 并且每次在 for “i” 迭代中从 “0” 开始,理想情况下 “i” 应该获得增量值并从 2 开始,输出是:
inside for 0
inside for 1
inside for 2
second iteration:
inside for 0
inside for 1
inside for 2
.
.
理想情况下输出如下:
inside for 0
inside for 1
inside for 2
second iteration:
inside for 3
inside for 4
inside for 5
.
.
所以关键是“i”值没有保存,每次循环都从 0 开始,那么我怎样才能让“i”在进入 for 循环之前从最后一个递增的值开始。
原文由 golu kashyap 发布,翻译遵循 CC BY-SA 4.0 许可协议
当您使用
i
时,您无法控制for i in ...
。它设置为for
循环决定何时循环。在这里,只是不要使用
i
作为循环索引,使用匿名变量,如_
计数 3 次,保留i
计数器 as75 :输出:
另外:
while true
应该是while True
。与 Java 和 C++ 不同,布尔值在 Python 中大写。