How to break out of multiple loops?

后端 未结 30 3901
情书的邮戳
情书的邮戳 2020-11-21 05:48

Given the following code (that doesn\'t work):

while True:
    #snip: print out current state
    while True:
        ok = get_input(\"Is this ok? (y/n)\")
          


        
30条回答
  •  梦如初夏
    2020-11-21 06:12

    # this version breaks up to a certain label
    
    break_label = None
    while True:
        # snip: print out current state
        while True:
            ok = get_input("Is this ok? (y/n)")
            if ok == "y" or ok == "Y":
                break_label = "outer"   # specify label to break to
                break
            if ok == "n" or ok == "N":
                break
        if break_label:
            if break_label != "inner":
                break                   # propagate up
            break_label = None          # we have arrived!
    if break_label:
        if break_label != "outer":
            break                       # propagate up
        break_label = None              # we have arrived!
    
    #do more processing with menus and stuff
    

提交回复
热议问题