fn='a'
x=1
while fn:
print(x)
x+=1
if x==100:
fn=''
输出:1 ... 99
fn=''
x=1
while fn:
print(x)
x+=1
if x==100:
fn='a'
输出:while循环不运行。
while循环未运行的原因是什么?
结束while循环的条件是'False',因此它不能执行'while false'迭代吗?
答案 0 :(得分:5)
如果您想要'while false'功能,则需要not
。请改为while not fn:
。
答案 1 :(得分:3)
条件是循环实际上是一个“预先”条件(而不是后置条件“do-while”循环,比方说,C)。它测试每次迭代的条件,包括第一次。
在第一次迭代时,条件为假,因此循环立即结束。
答案 2 :(得分:2)
在python条件语句中:
''
与False
相同,0
与[]
相同
答案 3 :(得分:0)
考虑将你的循环条件转化为:
fn=''
x=1
while len(fn)>0:
print(x)
x+=1
if x==100:
fn='a'
,而检查在每次迭代开始时字符串是否为空。