Istruzione switch in Python
-
Implementa l’istruzione
switch
utilizzando il dizionario -
Implementa l’istruzione
switch
utilizzando le istruzioniif...elif...else
oif ... else
Questo tutorial mostrerà vari metodi per implementare la funzionalità dell’istruzione switch
in Python. In molti linguaggi di programmazione, l’istruzione switch
viene utilizzata per controllare il flusso del programma o, in altre parole, quali blocchi di codice eseguire in base al valore della variabile o dell’espressione.
A differenza dei linguaggi di programmazione come C, C++, C# e JAVA, il linguaggio Python non fornisce l’istruzione switch. Ma possiamo usare i seguenti metodi al posto dell’istruzione switch in Python.
Implementa l’istruzione switch
utilizzando il dizionario
Il tipo di dati del dizionario in Python viene utilizzato per memorizzare la raccolta di dati come coppie chiave: valore
. È un tipo di dati modificabile o modificabile e non consente valori duplicati.
Come nell’istruzione switch, decidiamo quale codice eseguire in base al valore della variabile. Possiamo usare le coppie chiave: valore
del dizionario, dove chiave
sarà il valore della variabile e valore
sarà il nome della funzione. Possiamo eseguire la funzione corrispondente in base al valore della chiave
.
Supponiamo di avere una variabile x
il cui valore decide l’esecuzione del codice, possiamo salvare la coppia chiave: valore
nel dizionario come 0:function1
, 1:function2
, ecc., Dove 0
e 1
è il valore del dizionario. Per evitare che il codice incappi in un errore, possiamo usare il metodo dict.get(key, default)
e passare il valore default
per il nome della funzione, se viene fornito un valore sconosciuto di x
.
Il codice di esempio seguente mostra come utilizzare il tipo di dati del dizionario per implementare la funzionalità dell’istruzione switch
in Python:
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)()
Produzione:
function 1 was executed
function 2 was executed
Nel caso in cui desideriamo eseguire alcune azioni sul valore di un’altra variabile a
in base al valore della variabile x
, possiamo farlo come mostrato nel codice di esempio seguente:
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))
Produzione:
12
5
Implementa l’istruzione switch
utilizzando le istruzioni if...elif...else
o if ... else
L’istruzione if...elif...else
è usata se abbiamo bisogno di gestire più di due casi, e l’istruzione if ... else
è usata per gestire due possibilità o casi.
Possiamo usare if ... else
se abbiamo due possibili codici per il valore di x
invece dell’istruzione switch
. E possiamo usare l’istruzione if...elif...else
se abbiamo più di due codici o funzioni da eseguire per i valori multipli di x
.
Il codice di esempio seguente mostra come implementare la funzionalità dell’istruzione switch
utilizzando l’istruzione if ... else
in Python:
def function1():
print("function 1 was executed")
def function2():
print("function 2 was executed")
x = 3
if x == 1:
function1()
else:
function2()
Produzione:
function 2 was executed
Possiamo implementare l’istruzione switch
utilizzando l’istruzione if...elif...else
per gestire più casi, come mostrato nel codice di esempio seguente:
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()
Produzione:
function 2 was executed