2017-06-02 5 views
0

Wenn ich einen Körper von Code haben, der wie folgt aussieht:aus mehreren verschachtelten während Brechen Schleifen

for ship in ships.shipLengths.key(): 
    while(True): 
     # Code 
     while(True): 
      # Code 
      while(True): 
       # Code 

Wenn ich zur Zeit bin in der 3. while-Schleife eine Art und Weise gibt es für mich auf den ersten zurück zu bekommen while-Schleife?

+1

Bitte nicht schreiben Code wie das, hat es schrecklich Lesbarkeit. Verwenden Sie Funktionen anstelle des Körpers jeder Schleife. –

+1

Schreiben Sie Ihren Code in Funktionen, so dass Sie Return verwenden können, um mehrere Schleifen zu beenden – Daniel

+3

Mögliche Duplikate von [Wie aus mehreren Schleifen in Python zu brechen?] (Https://StackOverflow.com/questions/189645/how-to-break -out-of-mehrere-Schleifen-in-Python) –

Antwort

0

Ich stimme @Aluan und @Daniel das ist keine gute Praxis, den Code auf diese Weise zu schreiben.

Wie auch immer, wenn Sie es immer noch tun wollen, hier ist ein Weg:

x = True 
for ship in ships.shipLengths.key(): 
    while condition1: 
     # Code 
     while condition2 and x: 
      # Code 
      while condition3 and x: 
       # Code 
       if goto_1st_while: 
        x = False 
        continue 
       # The code here will not run when goto_1st_while is True 
      if not x: 
       continue 
      # The code here will not run when goto_1st_while is True 
+0

Fortsetzung ist nicht gut, mit fortfahren können Sie nicht aus der Schleife, sondern nur um fortzufahren – kouty

+0

Ja, aber wenn x ist False, Sie wird beendet. –

Verwandte Themen