elif 命令在命令内部不断重复

elif command keeps repeating inside while command

我在 while 语句中放置了一个 elif 语句,我希望当它完成其中的内容时,它会重复 while 命令。实际发生的是控制台无限期地发送垃圾邮件 "unknown command"。我该如何解决这个问题?

while O == 0:
    if bla bla bla
        O = 1
    elif O != 1: #This should happen after it takes all if commands above me into account
        print('unknown command')

显然您的 if bla bla bla 测试不匹配。

但是,由于 O == 0 为真,因此 O != 1 也为真,并且您永远不会更改 O 的值,从而产生无限循环。无限循环每次迭代打印出 'unknown command',填满您的控制台。

只要你的 O==0 为真,elif 语句也为真 (o!=1) 除非 if 语句为真且 O 更改为 1。 因此,当执行 elif 语句时,它会进入无限循环,因为 o 的值在 elif 内部没有改变。或者在 elif

中打印后加一个 break