1. Einführung
Python zeichnet sich durch eine einfache und intuitive Syntax aus und ist eine der ersten Programmiersprachen, die viele Anfänger lernen. Darunter ist „bedingte Verzweigung“ ein unverzichtbares Element, um das Verhalten eines Programms zu steuern. In diesem Kapitel lernen wir die „if-Anweisung“, die Grundlage der bedingten Verzweigung in Python.
Die Bedeutung der bedingten Verzweigung in Python
Um verschiedene Verarbeitungen basierend auf bestimmten Bedingungen auszuführen, ist eine bedingte Verzweigung notwendig. Dieif
-Anweisung in Python ist die grundlegende Syntax, um diese bedingte Verzweigung zu realisieren. Durch das Verständnis davon verbessern sich die Flexibilität und Anwendbarkeit des Programms erheblich.
Die Rolle der if-Anweisung
if
-Anweisung führt die angegebene Verarbeitung nur aus, wenn eine bestimmte Bedingung erfüllt ist. Durch die Verwendung dieser Struktur kann das Programm dynamisch je nach Eingabe oder externer Umgebung agieren.
2. Grundsyntax der if-Anweisung
Dieif
-Anweisung in Python ist sehr einfach und kann intuitiv von Personen verstanden werden, die zum ersten Mal Programmieren lernen. In diesem Kapitel erklären wir die grundlegende Struktur derif
-Anweisung und ihre Verwendung.
Grundstruktur
Die grundlegende Struktur derif
-Anweisung in Python ist wie folgt.
if Bedingung:
auszuführender Code
Die Wichtigkeit der Einrückung
In Python wird die Hierarchie des Codes durch Einrückung (Indentation) ausgedrückt. Der Code, der ausgeführt wird, wenn die Bedingung derif
-Anweisung erfüllt ist, muss unbedingt um eine Stufe eingerückt geschrieben werden.Beispiel: Korrekte Einrückung
if 10 > 5:
print(\"10 ist größer als 5\")
Beispiel: Falsche Einrückung
if 10 > 5:
print(\"10 ist größer als 5\") # Fehler tritt auf
In Python tritt ein Fehler auf, wenn die Einrückung nicht korrekt ist, daher ist Vorsicht geboten.
Was ist eine Bedingung?
Die in derif
-Anweisung verwendete Bedingung ist ein Ausdruck, derTrue
oderFalse
zurückgibt. Wenn die BedingungTrue
ist, wird der Code innerhalb derif
-Anweisung ausgeführt. Zum Beispiel wird in dem folgenden Code, da die Bedingung erfüllt ist, die Nachricht angezeigt.
if 5 == 5:
print(\"Die Bedingung ist wahr\")
Andererseits, wenn die Bedingung nicht erfüllt ist, wird der Code innerhalb derif
-Anweisung ignoriert.
if 5 != 5:
print(\"Dieser Code wird nicht ausgeführt\")
3. Vergleichsoperatoren und logische Operatoren
Um Bedingungsausdrücke für dieif
-Anweisung in Python zu bilden, sind die „Vergleichsoperatoren“ und „logischen Operatoren“ unerlässlich. In diesem Kapitel erklären wir detailliert jeden Operator und konkrete Verwendungsbeispiele.
Was sind Vergleichsoperatoren?
Vergleichsoperatoren vergleichen zwei Werte und gebenTrue
oderFalse
zurück. Im Folgenden werden die wichtigsten Vergleichsoperatoren in Python aufgeführt.
Operator | Bedeutung | Beispiel | Ergebnis |
---|---|---|---|
== | Gleich | 5 == 5 | True |
!= | Ungleich | 5 != 3 | True |
> | Größer als | 5 > 3 | True |
< | Kleiner als | 5 < 3 | False |
>= | Größer oder gleich | 5 >= 5 | True |
<= | Kleiner oder gleich | 3 <= 5 | True |
Beispiel: Bedingte Verzweigung mit Vergleichsoperatoren
x = 10
if x > 5:
print("x ist größer als 5")
Was sind logische Operatoren?
Logische Operatoren werden verwendet, um mehrere Bedingungsausdrücke zu kombinieren. Die folgenden drei logischen Operatoren werden häufig in Python verwendet.
Operator | Bedeutung | Beispiel | Ergebnis |
---|---|---|---|
and | Beide Bedingungen sind True | 5 > 3 and 10 > 5 | True |
or | Mindestens eine Bedingung ist True | 5 > 3 or 10 < 5 | True |
not | Umkehrung des logischen Werts der Bedingung | not 5 > 3 | False |
Beispiel: Bedingte Verzweigung mit logischen Operatoren
x = 10
y = 20
if x > 5 and y > 15:
print("x ist größer als 5 und y ist größer als 15")
Kombinieren von Vergleichsoperatoren und logischen Operatoren
In derif
-Anweisung können durch die Kombination von Vergleichsoperatoren und logischen Operatoren komplexe Bedingungen gehandhabt werden.Beispiel: Kombinieren mehrerer Bedingungen
age = 25
income = 50000
if age > 18 and income > 30000:
print("Die Bedingungen sind erfüllt")
In diesem Code wird die Bedingung erfüllt, wennage
18 Jahre oder älter ist undincome
30000 oder mehr beträgt.
4. if-else-Anweisung
Zusätzlich zur grundlegendenif
-Anweisung wird dieelse
-Anweisung verwendet, um die Verarbeitung anzugeben, falls die Bedingung nicht erfüllt ist. In diesem Kapitel erklären wir die Struktur und die Verwendung derif-else
-Anweisung.
Grundstruktur der if-else-Anweisung
Die Struktur derif-else
-Anweisung ist wie folgt.
if Bedingung:
Verarbeitung, falls die Bedingung erfüllt ist
else:
Verarbeitung, falls die Bedingung nicht erfüllt ist
Beispiel für die Verwendung
Hier ist ein einfaches Beispiel für die Verwendung derif-else
-Anweisung.Beispiel: Verwendung der if-else-Anweisung
x = 10
if x > 5:
print("x ist größer als 5")
else:
print("x ist 5 oder kleiner")
In diesem Code wird, fallsx
größer als 5 ist, die erste Nachricht angezeigt, andernfalls wird die Verarbeitung inelse
ausgeführt.
Praktisches Beispiel
Dieif-else
-Anweisung wird häufig für dynamische Verarbeitungen basierend auf Benutzereingaben oder Bedingungen verwendet.Beispiel: Bedingte Verzweigung basierend auf Benutzereingabe
number = int(input("Bitte geben Sie eine Zahl ein: "))
if number % 2 == 0:
print("Es ist eine gerade Zahl")
else:
print("Es ist eine ungerade Zahl")
In diesem Beispiel wird die vom Benutzer eingegebene Zahl auf Geradheit oder Ungeradheit geprüft und eine entsprechende Nachricht angezeigt.
5. if-elif-else-Anweisung
Bei der Verarbeitung mehrerer Bedingungen kann es umständlich werden, wenn man nurif
-Anweisungen verwendet, da der Code kompliziert wird. In solchen Fällen kann dieif-elif-else
-Anweisung in Python genutzt werden, um mehrere Bedingungen effizient zu handhaben. In diesem Kapitel erklären wir die Struktur und Verwendungsbeispiele derif-elif-else
-Anweisung.
Grundstruktur der if-elif-else-Anweisung
Dieif-elif-else
-Anweisung hat die folgende Struktur.
if Bedingung1:
Verarbeitung, wenn Bedingung1 erfüllt ist
elif Bedingung2:
Verarbeitung, wenn Bedingung2 erfüllt ist
else:
Verarbeitung, wenn keine der Bedingungen erfüllt ist
elif
ist eine Abkürzung für „else if“ und wird verwendet, um mehrere Bedingungen nacheinander zu prüfen.
Verwendungsbeispiel
Das Folgende ist ein einfaches Beispiel mit derif-elif-else
-Anweisung.Beispiel: Bedingte Verzweigung basierend auf dem Wertebereich einer Zahl
score = 85
if score >= 90:
print("Bewertung: A")
elif score >= 80:
print("Bewertung: B")
elif score >= 70:
print("Bewertung: C")
else:
print("Bewertung: D")
In diesem Beispiel wird eine unterschiedliche Nachricht basierend auf dem Wert vonscore
angezeigt.
Die Wichtigkeit von elif
Durch die Verwendung vonelif
werden die Bedingungen nacheinander ausgewertet, sodass auch bei überlappenden Bedingungen eine effiziente Verarbeitung möglich ist.Beispiel: Priorität der Bedingungen
temperature = 30
if temperature > 35:
print("Es ist ein extrem heißer Tag")
elif temperature > 25:
print("Es ist ein heißer Tag")
elif temperature > 15:
print("Es ist ein angenehmer Tag")
else:
print("Es ist ein kalter Tag")
In diesem Code wird nur die erste übereinstimmende Bedingung ausgeführt, und die folgenden Bedingungen werden übersprungen.
Das Weglassen von else
else
ist nicht zwingend erforderlich und kann bei Bedarf weggelassen werden. Insbesondere wenn es nicht notwendig ist, alle Fälle explizit zu behandeln, kann es weggelassen werden.Beispiel: Wenn else weggelassen wird
age = 20
if age >= 18:
print("Sie sind volljährig")
elif age >= 13:
print("Sie sind Teenager")
6. Verschachtelte if-Anweisungen
Wenn die Bedingungen komplexer sind, können Sieif
-Anweisungen verschachtelt (nested) verwenden. In diesem Kapitel erklären wir, wie man verschachtelteif
-Anweisungen schreibt und worauf man achten sollte.
Grundstruktur verschachtelter if-Anweisungen
Die Struktur verschachtelterif
-Anweisungen ist wie folgt.
if Bedingung1:
if Bedingung2:
Verarbeitung, wenn Bedingung1 und Bedingung2 beide erfüllt sind
Beispiel für die Verwendung
Das Folgende ist ein Beispiel für die Verwendung verschachtelterif
-Anweisungen.Beispiel: Kombinieren von zwei Bedingungen
age = 25
income = 40000
if age > 18:
if income > 30000:
print("Erwachsener mit ausreichendem Einkommen")
else:
print("Erwachsener, aber Einkommen unzureichend")
else:
print("Minderjährig")
In diesem Code werden die Bedingungen für Alter und Einkommen kombiniert und geprüft.
Hinweise
Wenn Sie Verschachtelungen übermäßig verwenden, kann der Code schwer lesbar werden. Daher ist es wichtig, die Bedingungen getrennt zu beschreiben oder logische Operatoren zu nutzen, um es knapp zu halten.Beispiel: Vereinfachung der Verschachtelung
age = 25
income = 40000
if age > 18 and income > 30000:
print("Erwachsener mit ausreichendem Einkommen")
elif age > 18:
print("Erwachsener, aber Einkommen unzureichend")
else:
print("Minderjährig")
7. Kurzform von Bedingungsanweisungen (Ternärer Operator)
Python bietet den ternären Operator, um einfache bedingte Anweisungen in einer einzigen Zeile zu schreiben. In diesem Kapitel erläutern wir die grundlegende Syntax des ternären Operators, Verwendungsbeispiele und Hinweise.
Grundlegende Syntax des ternären Operators
Der ternäre Operator wird wie folgt beschrieben.
Wert1 if Bedingung else Wert2
- Wenn
Bedingung
True
ist, wirdWert1
zurückgegeben. - Wenn
Bedingung
False
ist, wirdWert2
zurückgegeben.
Verwendungsbeispiele
Beispiel: Überprüfung einer Zahl
x = 10
result = "positive Zahl" if x > 0 else "negative Zahl"
print(result)
In diesem Code wird, wennx
größer als 0 ist, „positive Zahl“ angezeigt, andernfalls „negative Zahl“.Beispiel: Bestimmung des Maximalwerts
a, b = 5, 10
max_value = a if a > b else b
print(f"Der Maximalwert ist {max_value}")
In diesem Beispiel wird bestimmt, welcher vona
undb
größer ist, und dieser Wert wirdmax_value
zugewiesen.
Nesteter ternärer Operator
Der ternäre Operator kann verschachtelt werden, aber Vorsicht ist geboten, da der Code dadurch schwer lesbar wird.Beispiel: Verschachtelter ternärer Operator
x = 0
result = "positive Zahl" if x > 0 else "negative Zahl" if x < 0 else "Null"
print(result)
In diesem Code wird bestimmt, obx
eine positive Zahl, negative Zahl oder Null ist.
Hinweise
- Der ternäre Operator ist knapp und praktisch, aber nicht für komplexe Bedingungen geeignet. Bei komplexen Bedingungen verbessert die Verwendung normaler
if-else
-Anweisungen die Lesbarkeit. - Übermäßiger Einsatz des ternären Operators mindert die Lesbarkeit des Codes, daher sollte er nur in geeigneten Situationen verwendet werden.
8. Hinweise zu if-Anweisungen
Beim Einsatz derif
-Anweisung in Python sollten Sie einige Eigenschaften und Vorsichtsmaßnahmen verstehen. Dieses Kapitel erläutert Punkte, um gängige Fehler und Probleme zu vermeiden.
Bewertung von None und leeren Werten
In Python werdenNone
und leere Werte (leere Strings, leere Listen usw.) alsFalse
ausgewertet.Beispiel: Bewertung von None
x = None
if not x:
print("x ist None")
Beispiel: Bewertung leeren Werts
items = []
if not items:
print("Die Liste ist leer")
is
und ==
Unterschied
==
vergleicht die Wertgleichheit.is
vergleicht die Objektidentität (ob es sich um dasselbe Objekt im Speicher handelt).
Beispiel: Unterschied zwischen is
und ==
a = [1, 2, 3]
b = [1, 2, 3]
print(a == b) # True (Werte sind gleich)
print(a is b) # False (Objekte sind unterschiedlich)
Vorsichtsmaßnahmen bei Bedingungsausdrücken
Wenn Bedingungsausdrücke komplex werden, ist es ratsam, Klammern zu verwenden, um die Priorität der Bedingungen klar zu machen.Beispiel: Bedingungsausdruck mit Klammern
x = 10
y = 5
if (x > 5 and y < 10) or x == 10:
print("Die Bedingung ist erfüllt")

9. Zusammenfassung
In dieser Serie haben wir von den Grundlagen bis zu fortgeschrittenen Themen bezüglich der Python-if
-Anweisung gelernt. In diesem Kapitel werfen wir einen Blick auf den bisherigen Inhalt und ordnen die wichtigen Punkte.
Grundlagen der Python-if
-Anweisung
- Die
if
-Anweisung führt nur bei BedingungTrue
bestimmten Code aus. - In Python bestimmt die Einrückung die Code-Struktur, daher ist die korrekte Einrückung wichtig.
Grundlegende Syntax
if Bedingung:
auszuführender Code
Erweiterung der Bedingungsverzweigungen
- Durch die Verwendung der
if-else
-Anweisung kann die Verarbeitung für den Fall, dass die BedingungFalse
ist, ebenfalls angegeben werden. - Mit der
if-elif-else
-Anweisung können mehrere Bedingungen effizient verarbeitet werden.
Beispiel: if-elif-else-Anweisung
score = 75
if score >= 90:
print("Bewertung: A")
elif score >= 75:
print("Bewertung: B")
else:
print("Bewertung: C")
Verarbeitung komplexer Bedingungen
- Durch die Kombination von Vergleichsoperatoren und logischen Operatoren können komplexere Bedingungen beschrieben werden.
- Durch Verwendung verschachtelter
if
-Anweisungen können hierarchische Bedingungen verarbeitet werden.
Beispiel: Komplexe Bedingung
age = 25
income = 50000
if age > 18 and income > 30000:
print("Die Bedingungen sind erfüllt")
Nutzung der Kurzform (ternärer Operator)
- Um einfache Bedingungsverzweigungen in einer Zeile zu beschreiben, wird der ternäre Operator verwendet.
- Allerdings eignet er sich nicht für komplexe Bedingungen, daher ist es in solchen Fällen besser, die übliche
if-else
-Anweisung zu verwenden.
Beispiel: Ternärer Operator
result = "bestanden" if score >= 60 else "durchgefallen"
Wichtige Hinweise
- Leere Werte oder
None
werden alsFalse
behandelt. - Verstehen Sie den Unterschied zwischen
is
und==
und verwenden Sie sie angemessen. - Bei komplexen Bedingungen ist es wichtig, Klammern zu verwenden, um die Priorität klar zu machen.
Nächste Schritte
Die Python-if
-Anweisung ist nicht nur ein grundlegendes Lernmittel für Bedingungsverzweigungen, sondern ein wichtiges Werkzeug, das die Flexibilität von Programmen erheblich verbessert. Als nächsten Schritt empfehle ich, zu den folgenden Themen überzugehen.
- Kombination von Schleifen und Bedingungsverzweigungen
- Lernen Sie, wie man
if
-Anweisungen infor
– oderwhile
-Schleifen einsetzt.
- Ausnahmebehandlung
- Lernen Sie die
try-except
-Anweisung, um Fehler im Programm angemessen zu behandeln.
- Funktionen und Bedingungsverzweigungen
- Erwerben Sie Kenntnisse darüber, wie man Bedingungsverzweigungen in Funktionen einsetzt, um wiederverwendbaren Code zu erstellen.
Damit endet die Erklärung zur Python-if
-Anweisung. Nutzen Sie dieses Wissen, um anspruchsvollere Programme zu entwickeln. Das Meistern von Bedingungsverzweigungen ist ein großer Schritt zu den nächsten Stufen.