Articles

Python switch case

dragi cursanți, sper că învățați bine. În tutorialul nostru anterior ați aflat despre murătura Python. În acest tutorial ne vom uita în python comutator caz declarație.

Python switch case

deși multe alte limbi oferă declarații de comutare, python nu are nicio declarație de comutare. Potrivit PEP-3103, se asigura cu privire la acest fapt. Cu toate acestea, dacă vă place instrucțiunea switch case în alte limbaje de programare, puteți crea un fragment de cod care funcționează ca o declarație switch case în python.

utilizarea dicționarului pentru a returna valoarea

puteți utiliza dicționarul pentru a funcționa ca o declarație de comutare. Aici cheile dicționarului vor funcționa ca case.

apoi, în funcție de chei, valoarea dicționarului va funcționa ca rezultat. Vom da un exemplu prin acest tutorial. A se vedea următorul cod pentru a înțelege acest exemplu simplu de alternativă declarație de caz comutator. Consultați tutorialul dicționarului Python, dacă nu știți despre dicționarul Python.

b ={ 'a' : 122, 'b' : 123, 'c' : 124, 'd' : 125}# take user inputinp = input('input a character : ')# -1 is the default value if there is no keys that matches the inputprint('The result for inp is : ', b.get(inp, -1))

deci, pentru cazul meu am introdus ‘b’ ca intrare. Rezultatul a fost următorul

declarație de caz comutator Python

alternativă declarație de caz comutator Python cu funcții dinamice

În această secțiune vom vedea cum să acțiune bazată pe chei dicționar. Deci, imaginați-vă un scenariu în cazul în care avem nevoie pentru a calcula lucru diferit bazat pe intrare. Cum se face asta folosind dicționarul? Ei bine, în acest caz, vom folosi funcția Python Lambda pentru a face acest lucru. A se vedea exemplul următor ca o alternativă de python comutator caz declarație.

def switch_func(value, x): return { 'a': lambda x: x+122, 'b': lambda x: x*2, 'c': lambda x: x-123, 'd': lambda x: x/2 }.get(value)(x)# take user inputinp = input('input a character : ')print('The result for inp is : ', switch_func(inp, 2))

am folosit ‘d’ ca intrare. Deci, de ieșire din următorul cod a fost ca aceasta

input a character : dThe result for inp is : 1.0

deci, asta e tot despre Python comutator caz declarație alternative. Nu este recomandat să utilizați acest tip de fragment de cod. Python dacă tehnica altceva este mai elegant de utilizat decât acest fragment. Dar nu este niciodată rău să înveți despre noi tehnici.