switch-Anweisung in Python

Muhammad Waiz Khan 30 Januar 2023
  1. Implementieren Sie die Anweisung switch mithilfe des Dictionaries
  2. Implementieren Sie die Anweisung switch mit den Anweisungen if...elif...else oder if ... else
switch-Anweisung in Python

In diesem Tutorial werden verschiedene Methoden zum Implementieren der Anweisungsfunktion switch in Python demonstriert. In vielen Programmiersprachen wird die Anweisung switch verwendet, um den Programmablauf zu steuern oder mit anderen Worten, welche Codeblöcke basierend auf dem Wert der Variablen oder des Ausdrucks auszuführen sind.

Im Gegensatz zu den Programmiersprachen wie C, C++, C# und JAVA bietet die Python-Sprache die switch-Anweisung nicht. Anstelle der switch-Anweisung in Python können wir jedoch die folgenden Methoden verwenden.

Implementieren Sie die Anweisung switch mithilfe des Dictionaries

Der Dictionarydatentyp in Python wird verwendet, um die Datensammlung als key:value-Paare zu speichern. Es ist ein veränderbarer oder veränderbarer Datentyp und erlaubt keine doppelten Werte.

Wie in der switch-Anweisung entscheiden wir anhand des Werts der Variablen, welcher Code ausgeführt werden soll. Wir können die key:value-Paare des Dictionaries verwenden, wobei der key der Wert der Variablen und der value der Name der Funktion ist. Wir können die entsprechende Funktion basierend auf dem Wert key ausführen.

Angenommen, wir haben eine Variable x, deren Wert über die Ausführung des Codes entscheidet. Wir können das Paar key:value im Dictionary wie 0:function1, 1:function2 usw. speichern, wobei 0 und 1 ist der Wert des Dictionaries. Um zu verhindern, dass der Code auf einen Fehler stößt, können wir die Methode dict.get(key, default) verwenden und den Wert default für den Funktionsnamen übergeben, wenn ein unbekannter Wert von x angegeben ist.

Der folgende Beispielcode zeigt, wie der Datentyp des Dictionaries zum Implementieren der Anweisungsfunktion switch in Python verwendet wird:

def function1():
    print("function 1 was executed")


def function2():
    print("function 2 was executed")


def function3():
    print("function 3 was executed")


switch = {1: function1, 2: function2, 3: function3}

x = 1
switch.get(x, function1)()
x = 2
switch.get(x, function1)()

Ausgabe:

function 1 was executed
function 2 was executed

Wenn wir einige Aktionen für den Wert einer anderen Variablen a basierend auf dem Wert der Variablen x ausführen möchten, können wir dies wie im folgenden Beispielcode gezeigt tun:

switch = {1: lambda a: a + 1, 2: lambda a: a + 2, 3: lambda a: a + 3}

x = 2
a = 10
print(switch[x](a))
x = 1
a = 4
print(switch[x](a))

Ausgabe:

12
5

Implementieren Sie die Anweisung switch mit den Anweisungen if...elif...else oder if ... else

Die Anweisung if...elif...else wird verwendet, wenn mehr als zwei Fälle behandelt werden müssen, und die Anweisung if ... else wird verwendet, um zwei Möglichkeiten oder Fälle zu behandeln.

Wir können if ... else verwenden, wenn wir zwei mögliche Codes für den Wert von x anstelle der Anweisung switch haben. Und wir können die Anweisung if...elif...else verwenden, wenn wir mehr als zwei Codes oder Funktionen für die mehreren Werte von x ausführen müssen.

Der folgende Beispielcode zeigt, wie die Anweisungsfunktion switch mithilfe der Anweisung if ... else in Python implementiert wird:

def function1():
    print("function 1 was executed")


def function2():
    print("function 2 was executed")


x = 3

if x == 1:
    function1()
else:
    function2()

Ausgabe:

function 2 was executed

Wir können die Anweisung switch mithilfe der Anweisung if...elif...else implementieren, um mehrere Fälle zu behandeln, wie im folgenden Beispielcode gezeigt:

def function1():
    print("function 1 was executed")


def function2():
    print("function 2 was executed")


def function3():
    print("function 3 was executed")


x = 2
if x == 1:
    function1()
elif x == 2:
    function2()
elif x == 3:
    function3()

Ausgabe:

function 2 was executed

Verwandter Artikel - Python Keyword