我想知道是否有人反对在输入while循环之后为while循环中的比较中使用的变量赋值。一个虚拟的例子:
i = 0
target = 10
while i < target:
print i
if i == 9:
target = 20
i = i + 1
答案 0 :(得分:6)
不,没有什么可以阻止你这样做。你的榜样本身就是一个证据。
尽管如此,更好的做法是在条件上使用while True:
循环和break
。由于您的循环条件本身很容易发生变化,因此它根本不是一个不变的条件。因此,我建议你这样做:
i = 0
target = 10
while True:
print i
i = i + 1
# If i hits 9 at any point, change target
if i == 9:
target = 20
# If i ever hits the target, break
if i >= target:
break