Python 同时循环并将值解释为真或假
下面的程序来自python的一本书。在此代码中,count首先设置为0,然后Python 同时循环并将值解释为真或假,python,Python,下面的程序来自python的一本书。在此代码中,count首先设置为0,然后,同时使用True。在书中,我读到零和空字符串的计算结果为False,而所有其他值的计算结果为True。如果是这种情况,那么程序如何执行while循环?当计数设置为0时,计数的计算结果不是为False吗 有人能解释一下吗 # Finicky Counter # Demonstrates the break and continue statements count = 0 while True: #
,同时使用True
。在书中,我读到零和空字符串的计算结果为False,而所有其他值的计算结果为True。如果是这种情况,那么程序如何执行while循环?当计数设置为0时,计数的计算结果不是为False吗
有人能解释一下吗
# Finicky Counter
# Demonstrates the break and continue statements
count = 0
while True: # while count is True
count += 1
# end loop if count greater than 10
if count > 10:
break
# skip 5
if count == 5:
continue
print(count)
input("\n\nPress the enter key to exit.")
如果你评估
if count: # and count is zero
break
然后确定-循环将立即中断。
但您正在计算此表达式:
if count > 10: # 0 > 10
这是False
,因此您不会在第一次迭代时中断。如果您评估
if count: # and count is zero
break
然后确定-循环将立即中断。
但您正在计算此表达式:
if count > 10: # 0 > 10
这是
False
,因此您不会在第一次迭代时中断。如果您将更改为True:
而计数:更改为而计数:
,那么如果您将更改为True:
而计数:,您的假设确实是正确的,您的假设在代码部分中确实是正确的,而如果为True,则条件的计算结果将始终为True。现在让我们进入while循环
当计算count>10
时,对于count=0,它是false,因此当count<10时,它不会跳出while循环
如果它是while count:
Yes,它将在第一次迭代中退出循环,因为while count:
相当于-while count!=0
对于条件
count==5
,它将继续进行下一次迭代,并且不会在循环内部打印。在代码部分中,如果为True,则条件的计算结果将始终为True。现在让我们进入while循环
当计算count>10
时,对于count=0,它是false,因此当count<10时,它不会跳出while循环
如果它是while count:
Yes,它将在第一次迭代中退出循环,因为while count:
相当于-while count!=0
对于条件count==5
,它将继续进行下一次迭代,并且不会在循环内打印。while循环是一个循环,将运行部分代码,直到条件为False。
while True称为无限循环,因为True不是一个条件,因此无法更改。因此,循环将一直运行,直到找到break指令
这里有两个与循环相关的特殊元素:
- 继续:直接转到下一个迭代
- 中断:退出循环
while循环是一个循环,它将运行部分代码,直到条件为False。
while True称为无限循环,因为True不是一个条件,因此不能更改。因此,循环将一直运行,直到找到break指令
这里有两个与循环相关的特殊元素:
- 继续:直接转到下一个迭代
- 中断:退出循环
你在计数时没有说
,
你说而为真:
因为为真
总是为真
,你的循环将永远运行,除非里面有东西告诉它不要这样做。这可能是一行写着break
,也可能是引发的异常。如果count
大于10
,循环将中断count
从零开始,但在第一次迭代时,count+=1
发生,并且count
现在是1。由于count
不大于10,因此它不会中断。由于count
不等于5
,因此它也不会继续。它只需打印1
。在下一次迭代中,count
再次递增,同样的事情发生在if
语句中。直到最后,count
等于4
的迭代结束时,情况都是一样的。由于True
仍然是True
,因此迭代再次发生<代码>计数
递增,现在等于5。if count>10:
语句是False
,但是if count==5:
是True
,因此循环跳过print
调用,返回循环的开头。它首先得到的是count+=1
,因此count
现在等于6。接下来的几次迭代与count
为5次之前发生的情况非常相似。一旦发生了count
为9的迭代,它将到达循环的开始并递增count
。现在count
是10,循环中断。当count:时你没有说,而当True:
时你说,因为True
总是True
,你的循环将永远运行,除非里面有东西告诉它不要这样做。这可能是一行写着break
,也可能是引发的异常。如果count
大于10
,循环将中断count
从零开始,但在第一次迭代时,count+=1
发生,并且count
现在是1。由于count
不大于10,因此它不会中断。由于count
不等于5
,因此它也不会继续。它只需打印1
。在下一次迭代中,count
再次递增,同样的事情发生在if
语句中。直到最后,count
等于4
的迭代结束时,情况都是一样的。由于True
仍然是True
,因此迭代再次发生<代码>计数
递增,现在等于5。if count>10:
语句是False
,但是if count==5:
是True
,因此循环跳过print
调用并返回t