Articles

Python switch case

drodzy uczniowie, mam nadzieję, że dobrze się uczycie. W naszym poprzednim samouczku dowiedziałeś się o Pythonie Pickle. W tym tutorialu przyjrzymy się Python switch case statement.

Python switch case

chociaż wiele innych języków oferuje instrukcje switch, python nie ma instrukcji switch. Według PEP-3103 zapewnia o tym fakcie. Jeśli jednak podoba Ci się instrukcja switch case w innych językach programowania, możesz utworzyć fragment kodu, który działa jak instrukcja switch case w Pythonie.

używając słownika do zwracania wartości

możesz użyć słownika do działania jak instrukcja switch. Tutaj klucze słownika będą działać jako case.

następnie zgodnie z kluczami wartość słownika będzie działać jako wynik. Podamy przykład w tym samouczku. Zobacz poniższy kod, aby zrozumieć ten prosty przykład alternatywnej instrukcji switch case. Zobacz nasz poradnik Python Dictionary, jeśli nie wiesz o Python dictionary.

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))

więc w moim przypadku wpisałem 'b’ jako wejście. Wyjście było następujące

Python switch case statement

Python switch case statement alternatywa dla funkcji dynamicznych

w tej sekcji zobaczymy jak wykonać dynamiczne działanie oparte na kluczach słownikowych. Wyobraźmy sobie scenariusz, w którym musimy obliczyć różne rzeczy na podstawie danych wejściowych. Jak to zrobić za pomocą słownika? W tym przypadku użyjemy Pythonowej funkcji Lambda. Zobacz poniższy przykład jako alternatywę instrukcji python switch case.

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))

użyłem 'd’ jako wejścia. Tak więc wyjście poniższego kodu było takie

input a character : dThe result for inp is : 1.0

, więc to wszystko o alternatywach instrukcji Python switch case. Nie zaleca się używania tego rodzaju fragmentu kodu. Technika Pythona if else jest bardziej elegancka w użyciu niż ten fragment. Ale nigdy nie jest źle, aby dowiedzieć się o nowych technikach.