Python 为什么我被困在无限循环中

Python 为什么我被困在无限循环中,python,infinite-loop,Python,Infinite Loop,有人能告诉我为什么我被困在一个无限循环中吗?我找不出有什么问题。我已尝试打印出项目,以至少找出问题的来源,我认为它是在practiceBalance>0之后发生的。除此之外,我还没弄明白!谢谢 count = 0 while count<12: count +=1 if practiceBalance < 0: count = 0 elif practiceBalance > 0: count = 0 elif

有人能告诉我为什么我被困在一个无限循环中吗?我找不出有什么问题。我已尝试打印出项目,以至少找出问题的来源,我认为它是在practiceBalance>0之后发生的。除此之外,我还没弄明白!谢谢

count = 0
while count<12:

    count +=1

    if practiceBalance < 0:
        count = 0
    elif practiceBalance > 0:
        count = 0
    elif practiceBalance == 0:
        break
count=0
计数为0时:
计数=0
elif practiceBalance==0:
打破

如果您打印
practiceBalance
您会注意到:

practiceBalance: 298222.561111
practiceBalance: 298222.561111
practiceBalance: 298222.561111
practiceBalance: 298222.561111
practiceBalance: 298222.561111
practiceBalance: 298222.561111
practiceBalance: 298222.561111
practiceBalance: 298222.561111
...
因此,它总是大于
0
。因此,在本条中:

elif practiceBalance > 0:
    low = monthlyPayment   
    practiceBalance = balance
    count = 0

您总是将
count
重置为
0

if
elif
条件下,您正在使
count
等于0。因此它会无限长,但“elif”语句不会只运行一次?我想这就是它的工作原理。我以为只有“while”语句继续循环?@MeMyself:每次运行循环时都会检查所有if/elif/else语句,因为它们都在循环中。我尝试将其作为函数重写……这仍然是一项正在进行的工作,但我仍然没有得到正确的答案。尽管无限循环停止了。@MeMyself因为这个答案帮助您解决了无限循环问题,我建议您接受它(答案旁边的绿色勾号),自己好好解决其余的问题,然后带着另一个问题回到站点(如果适用,可能会引用这个问题)稍后,如果您仍然有问题-只需确保您生成了代码,并尝试了您已经尝试过的尝试。。。祝你好运