While else?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Gast

Was bringt

while Bedingung:
anweisung
else:
zsuatz

der zsuatz wird eh immer Aufgerufen, was bringt da jetzt dass man eine else-Anweisung angeben kann?
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

setze doch bitte deinen Code in [code] ..... [/code] Tags. Dann kann man das besser lesen.

Hans
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

So, nun zum Prob. Habe mir mal ein Beispiel zurechtgezimmert.

Code: Alles auswählen

#!/usr/bin/env python2.3

i=10

while i > 5:
  print '%d grösser' % i
  i-=1
else:
  print '%d kleiner' % i
  i-=1
solange i > 5 ist, wird der Code ausgeführt. Ist die Bedingung nicht erfüllt, dann wird in den Else Zweig gesprungen und die Schleife beendet.

Es ist richtig, auf das ELSE könntest du verzichten. Aber manchmal ist es eben sinnvoll, mit ELSE zu arbeiten um zu verdeutlichen, dass dieses die Nachbehandlung zu deiner Schleife ist.

Nehmen wir einmal an, dass in obigen Beispiel die Variable i im nachhinein noch weiter Verwendung findet, aber um 1 verringert werden muß. Dann macht die Schreibweise durchaus Sinn. Also mehr ein stilistisches Element, es sei denn Dookie zaubert jetzt noch etwas aus der Trickkiste :D

Hans
Antworten