Switch in Python: Fallunterscheidungen?

You are here:

Du wirst vielleicht überrascht sein, aber in Python gibt es keine eingebaute `switch`-Anweisung, wie Du sie vielleicht aus anderen Programmiersprachen kennst. Trotzdem gibt es verschiedene Möglichkeiten, um Fallunterscheidungen in Python umzusetzen. In diesem Beitrag zeige ich Dir einige Methoden, wie Du das Konzept von `switch`-Anweisungen in Python realisieren kannst, indem Du vorhandene Sprachkonstrukte verwendest. Ich werde dabei viele Codebeispiele verwenden, um das Verständnis zu fördern.

Methode 1: if, elif und else

Eine Möglichkeit, Fallunterscheidungen in Python umzusetzen, ist die Verwendung von `if`, `elif` und `else`-Anweisungen. In diesem Beispiel erstelle ich eine Funktion, die je nach übergebenem Wert unterschiedliche Nachrichten ausgibt:

def switch_case(value):
    if value == 1:
        print("Fall 1")
    elif value == 2:
        print("Fall 2")
    elif value == 3:
        print("Fall 3")
    else:
        print("Ungültiger Wert")
switch_case(2)  # Gibt "Fall 2" aus

Methode 2: Dictionaries

Eine weitere Möglichkeit, Fallunterscheidungen zu implementieren, ist die Verwendung von Dictionaries. Dictionaries können als eine Art “Look-up-Tabelle” verwendet werden, um Funktionen oder Werte auf der Grundlage von Schlüsseln zuzuordnen:

def case1():
    print("Fall 1")
def case2():
    print("Fall 2")
def case3():
    print("Fall 3")
def default_case():
    print("Ungültiger Wert")
switch_dict = {
    1: case1,
    2: case2,
    3: case3
}
value = 2
switch_dict.get(value, default_case)()  # Gibt "Fall 2" aus

In diesem Beispiel erstelle ich ein Dictionary, das Funktionen den entsprechenden Schlüsseln zuordnet. Die `get()`-Methode des Dictionaries gibt die Funktion für den entsprechenden Schlüssel zurück oder die Standardfunktion, wenn der Schlüssel nicht vorhanden ist. Das Hinzufügen von Klammern am Ende (`()`) führt die zurückgegebene Funktion aus.

Obwohl Python keine eingebaute `switch`-Anweisung hat, gibt es verschiedene Möglichkeiten, um ähnliche Konstrukte in Python zu erstellen. Die Verwendung von `if`, `elif`, `else` oder Dictionaries sind zwei verbreitete Ansätze, um Fallunterscheidungen in Python umzusetzen. Durch das Verständnis dieser Methoden und das Üben mit Codebeispielen wirst Du in der Lage sein, flexibel auf unterschiedliche Situationen in Deinem Programm zu reagieren. Viel Spaß beim Programmieren!