Python Tutorial - Entscheidungskontrolle

Jinku Hu 30 Januar 2023
  1. if...else Anweisung
  2. if Anweisung
  3. if...else Anweisung
  4. if...elif...else Anweisung
  5. Verschachtelte if-Anweisungen
Python Tutorial - Entscheidungskontrolle

In diesem Abschnitt lernen Sie das Entscheidungskonstrukt der Python-Programmierung kennen. Das am häufigsten verwendete Entscheidungskonstrukt ist ein if...else-Konstrukt.

if...else Anweisung

Die if....else Anweisung wird verwendet, wenn Sie zwei Anweisungsblöcke haben und Sie nur eine auf der Basis einiger Bedingungen ausführen wollen. In der Python-Programmierung wird meist if...elif...else als Entscheidungskonstrukt verwendet.

if Anweisung

In der if Anweisung haben Sie nur einen Block von Anweisungen und dieser Block wird nur ausgeführt, wenn die Bedingung True ist, und wird ignoriert, wenn die Bedingung False ist.

Unten ist die Syntax der if Anweisung in Python:

if condition:
    statement(s)

Der Körper der if-Anweisung in Python ist nicht von geschweiften Klammern umgeben, sondern es wird eine Einrückung verwendet. Das Ende des Körpers wird durch die erste unbeabsichtigte Zeile angezeigt.

if Anweisung Beispiel

Betrachten Sie das folgende Beispiel, in dem die if-Anweisung verwendet wird:

a = 24
if a % 2 == 0:
    print(a, "is an even number")
b = 23
if b % 2 == 0:
    print(b, "is an odd number")
24 is an even number

In diesem Code wird der Variablen a zuerst ein Wert zugewiesen und dann wird die Bedingung in der if Anweisung ausgewertet. Es wird geprueft, ob a eine gerade Zahl ist oder nicht, indem der Modul von a mit 2 genommen wird, und wenn das Ergebnis von % (mod) 0 ist, dann wird die Kontrolle in den Koerper von if eingegeben und die print Anweisung ausgefuehrt.

Dann wird b eine ungerade Zahl 23 zugewiesen. Die Bedingung in der if Anweisung ist nicht True, daher wird print(b, "ist eine ungerade Zahl") nicht ausgeführt.

if...else Anweisung

Das Folgende ist die Syntax einer if...else Anweisung:

if condition:
    block of statements
else:
    block of statements

Wenn in if...else die Bedingung Waise ist, wird der entsprechende Block von Anweisungen ausgeführt, andernfalls wird der Block von Anweisungen unter dem elsen Teil ausgeführt.

if...else Anweisungsbeispiel

Betrachten Sie den untenstehenden Code, in dem “wenn…sonst” verwendet wird:

a = 44
if a % 2 == 0:
    print(a, "is an even number")
else:
    print(a, "is an odd number")
44 is an even number

Hier wird, wenn a gerade ist, a ist eine gerade Zahl ausgegeben, andernfalls wird a ist eine ungerade Zahl ausgegeben.

Anmerkung
Die Blöcke if und else konnten nicht beide ausgeführt oder ignoriert werden. Nur ein Block wird ausgeführt, je nachdem, ob die Bedingung Waise ist oder nicht.

if...elif...else Anweisung

Das Folgende ist die Syntax der if...elif...else-Anweisung:

if condition:
    block of statements
elif condition:
    block of statements
else:
    block of statements

elif steht für else if und könnte mehrfach in diesem if..elif..else Konstrukt verwendet werden.

Wenn die Bedingung unter if zu False wird, wird die Bedingung von elif überprüft und so weiter. Wenn alle Bedingungen von if und Elif False sind, wird der selbe Teil ausgeführt.

Anmerkung
Es wird nur ein Block ausgeführt.

if...elif...else Anweisungsbeispiel

Betrachten Sie den folgenden Code, in dem wir die if...elif...else Anweisung verwendet haben, die mehrere Bedingungen prüft:

a = -34
if a > 0:
    print("Number is Positive")
elif a < 0:
    print("Number is Negative")
else:
    print("Number is zero")
Number is Negative

Verschachtelte if-Anweisungen

In Python können Sie ein if innerhalb einer anderen if-Anweisung haben. Dies wird als verschachtelte if-Anweisung bezeichnet.

Sie können jede Art von if-Anweisung beliebig oft verschachteln. Aber es ist keine gute Praxis, verschachtelte if-Strukturen in Programmiersprachen zu verwenden, da die Lesbarkeit des Programms immer schlechter wird.

Verschachtelte if Anweisungen Beispiel

Im folgenden Code wird eine verschachtelte if-Struktur verwendet, um die größte Zahl zu finden:

T = 52

if T > 25:
    if T < 50:
        print("Temperature is higher than 25 but lower than 50")
    else:
        print("Temperature is higher than 50")
else:
    if T < 0:
        print("Temperature is lower than 0")
    else:
        print("Temperature is higher than 0 but lower than 25")
Temperature is higher than 50
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook