Python Tutorial - Entscheidungskontrolle
-
if...else
Anweisung -
if
Anweisung -
if...else
Anweisung -
if...elif...else
Anweisung -
Verschachtelte
if
-Anweisungen
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.
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.
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
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