首页 > 解决方案 > 为什么 break 语句没有退出我的 while 循环?

问题描述

通常,该break语句应该退出我的while循环。如果我输入'Stop',而不是退出循环,我只会再次被要求输入。我究竟做错了什么?我的目标是编写一个程序,询问用户是否有学生在场。当我在我的输入中输入“停止”时,我在停止我的小程序时遇到了问题,所以我搜索了互联网并找到了 sys.Exit(0) 或退出之类的东西,但这一切都不起作用,所以我把我的东西放入了while循环,这样我就可以break在我想停止我的代码时使用它来停止,但我想我把自己弄糊涂了......

while True:
    #Schüler1
    while True:
        Schüler1 = input("Ist Schüler1 da?")
        if Schüler1 == 'Stop':
            break
        elif Schüler1 == 'Ja':
            s1 = 1
        elif Schüler1 == 'Nein':
            s1 = 0
        else:
            print("Bitte Ja, Nein oder Stop eingeben!")

        Schüler2 = input("Ist Schüler2 da?")
        if Schüler2 == 'Stop':
            print("Programm wird beendet...")
            break
        elif Schüler2 == 'Ja':
            s2 = 1
        elif Schüler2 == 'Nein':
            s2 = 0
        else:
            print("Bitte Ja, Nein oder Stop eingeben!")
    #Ausgabe
    #Kein Schüler
        if s1 + s2 == 0:
            print ("Es sind heute keine Schüler anwesend.")
        #1 Schüler
        elif s1 + s2 == 1:
            print ("Es ist heute ein Schüler anwesend.")

        #Mehr als 1 Schüler
        elif s1 + s2 > 1:
            print ("Es sind heute " + str(s1) + str(s2) + " Schüler anwesend.")

标签: python

解决方案


推荐阅读