绝对入门的Python编程:第3章错误

时间:2018-11-15 10:06:05

标签: python python-3.x infinite-loop

因此,在本书第3章“创建有意图的无限循环”小节中,作者给出了以下示例:

# Finicky Counter
# Demonstrates the break and continue statements
count = 0
while 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.")

但是它不起作用。它只会吐出中断外循环,而不会继续错误地继续循环内的错误。从我读过的内容来看,break / continue不能用于打破if-它只能脱离循环,我应该使用sys.exit()return。问题出现了,作者是什么意思,为什么他犯了这个“基本?”错误?也许这不是一个错误,但我缺少了一些东西。

您能否通过相当相似和简单的示例帮助我理解中断/继续功能的概念? :)

2 个答案:

答案 0 :(得分:0)

因为您缩进了缩进,所以这样做:

# Finicky Counter
# Demonstrates the break and continue statements
count = 0
while 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.")

因此,这些行:

# end loop if count greater than 10
if count > 10:
    break
# skip 5
if count == 5:
    continue

获得了所有额外的标签,因此它变为:

    # end loop if count greater than 10
    if count > 10:
        break
    # skip 5
    if count == 5:
        continue

请注意:即使您删除了breakcontinue,仍然会有问题,这将是一个无限循环。

答案 1 :(得分:0)

缩进在python中很重要。

count = 0
while 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.")