2 enkla sätt att implementera Python Switch Case Statement
gratis Python kurs med 25 realtidsprojekt Starta nu!!
i vår senaste Python-handledning studerade vi XML-bearbetning i Python 3. Idag kommer vi att studera hur man implementerar Python Switch Case Statement.
Till skillnad från andra språk som Java programmeringsspråk och C++ har Python inte en switch-case-konstruktion. Tillsammans med detta kommer vi att se hur man arbetar ett smutthål för Python switch case statement.
Så, låt oss diskutera olika sätt att implementera för Python Switch Case Statement.
2 enkla sätt att implementera Python Switch Case Statement
Vad är Python Switch Case Statement?
Python har inte en enkel switch-case konstruktion. Kommer från en Java-eller C++ – bakgrund kan du tycka att det här är lite udda.
i C++ eller Java har vi något så här:
string week(int i){ switch(i){ case 0: return "Sunday” break; case 1: return "Monday” break; case 2: return "Tuesday” break; case 3: return "Wednesday” break; case 4: return "Thursday” break; case 5: return "Friday” break; case 6: return "Saturday” break; default: return "Invalid day of week” } }
men Python har inte detta.
så för att komma runt detta använder vi Pythons inbyggda ordbokskonstruktion för att implementera fall och bestämde vad man ska göra när ett ärende uppfylls.
Vi kan också ange vad du ska göra när ingen uppfylls.
lösningar för Python Switch Case Statement
en väg ut skulle vara att implementera en if-elif-else stege. Snarare kan vi använda en ordbok för att kartlägga fall till deras funktionalitet.
här definierar vi en funktionsvecka() för att berätta vilken dag en viss dag i veckan är. En switcher är en ordbok som utför denna kartläggning.
>>> def week(i): switcher={ 0:'Sunday', 1:'Monday', 2:'Tuesday', 3:'Wednesday', 4:'Thursday', 5:'Friday', 6:'Saturday' } return switcher.get(i,"Invalid day of week")
Nu ringer vi till vecka() med olika värden.
>>> week(2)
utgång
>>> week(0)
utgång
>>> week(7)
utgång
>>> week(4.5)
utgång
som du kan se, för andra värden än de som vi nämner i omkopplaren, skrivs den ut ”ogiltig veckodag”. Detta beror på att vi säger att det ska göra det med hjälp av get () – metoden i en ordbok.
a. Använda Python-funktioner & Lambdas
Vi kan också använda funktioner och lambdas i ordboken.
>>> def zero(): return 'zero'>>> def one(): return 'one'>>> def indirect(i): switcher={ 0:zero, 1:one, 2:lambda:'two' } func=switcher.get(i,lambda :'Invalid') return func()>>> indirect(4)
utgång
>>> indirect(2)
utgång
>>> indirect(1)
utgång
>>> indirect(0.5)
utgång
B. med Python klasser
med hjälp av detta koncept med klasser kan vi välja en metod vid körning.
>>> class Switcher(object): def indirect(self,i): method_name='number_'+str(i) method=getattr(self,method_name,lambda :'Invalid') return method() def number_0(self): return 'zero' def number_1(self): return 'one' def number_2(self): return 'two'>>> s=Switcher()>>> s.indirect(2)
utgång
>>> s.indirect(4)
utgång
>>> s.number_1()
utgång
så det här handlade om Python Switch Case statement. Hoppas du gillar vår handledning.
Python Intervju Frågor Om Switch Case Statement
- har Python en switch case statement?
- hur implementerar du ett switchfall i Python?
- Vad är ett fall i switch uttalande i Python?
- förklara Python switch case uttalande med exempel.
- hur många fall kan du ha i switch statement i Python?
slutsats
därför drar vi slutsatsen att Python inte har en inbyggd switch-case-konstruktion, vi kan använda en ordbok istället.