Articles

2 yksinkertaista tapaa toteuttaa Python Switch Case Statement

ilmainen Python-kurssi, jossa on 25 reaaliaikaista projektia, Aloita nyt!!

viimeisessä Python-tutoriaalissa tutkimme XML-käsittelyä Python 3: ssa. Tänään tutkimme, miten Python Switch-Tapauslauseke toteutetaan.

toisin kuin muissa kielissä, kuten Java-ohjelmointikielessä ja C++: ssa, Pythonissa ei ole switch-case-konstruktiota. Yhdessä tämän, Näemme, miten työskennellä porsaanreikä Python switch tapaus selvitys.

joten keskustellaan Python Switchin Tapauslausekkeen eri toteutustavoista.

2 yksinkertaista tapaa toteuttaa Python Switch Case Statement

2 yksinkertaista tapaa toteuttaa Python Switch Case Statement

mikä on Python Switch Case Statement?

Pythonilla ei ole yksinkertaista switch-case-konstruktiota. Koska Java tai c++ tausta, saatat löytää tämän olevan hieman outoa.

C++: ssa tai Javassa on jotain tällaista:

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” } }

mutta Pythonissa tätä ei ole.

tämän kiertämiseksi käytämme Pythonin sisäänrakennettua sanakirjakonstruktiota tapausten toteuttamiseen ja päätämme, mitä tehdään, kun tapaus tulee vastaan.

voimme myös määritellä, mitä tehdä, kun mikään ei täyty.

ratkaisut Python Switchin Tapauslausekkeeseen

yksi keino olisi toteuttaa if-elif-else-tikapuut. Sen sijaan voimme käyttää sanakirjaa tapausten kartoittamiseen niiden toiminnallisuuden mukaan.

tässä määritellään funktioviikko (), joka kertoo, mikä päivä tietty viikonpäivä on. Vaihtaja on sanakirja, joka suorittaa tämän kartoituksen.

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

nyt soitetaan puheluita viikolle() eri arvoilla.

>>> week(2)

Lähtö

”tiistai”
>>> week(0)

Lähtö

”sunnuntai”
>>> week(7)

Lähtö

”virheellinen viikonpäivä”
>>> week(4.5)

lähtö

”virheellinen viikonpäivä”

kuten näkyy, muiden kuin Vaihtimessa mainitsemiemme arvojen osalta se tulostaa ”virheellinen viikonpäivä”. Tämä johtuu siitä, että käskemme sen tehdä niin sanakirjan get () – menetelmällä.

a. Python-funktioiden avulla & Lambdas

voidaan käyttää myös funktioita ja lambdoja sanakirjassa.

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

Lähtö

”virheellinen”

Lähtö

>>> indirect(2)

Lähtö

”kaksi”
>>> indirect(1)

Lähtö

”yksi”
>>> indirect(0.5)

lähtö

”virheellinen”

B. Python-luokilla

käyttämällä tätä käsitettä luokilla voidaan valita menetelmä suorituksen aikana.

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

Tuotos

”kaksi”

Tuotos

”virheellinen”
>>> s.number_1()

Tuotos

”yksi”

niin, tässä oli kyse Python Switchin tapauslauseesta. Toivottavasti pidät opetusohjelma.

Python Interview Questions on Switch Case Statement

  1. onko Pythonilla switch case statement?
  2. miten kytkintapaus toteutetaan Pythonissa?
  3. mikä on tapaus switch-lauseessa Pythonissa?
  4. selitä Python Switchin tapauslause esimerkillä.
  5. kuinka monta tapausta voi olla switch-lauseessa Pythonissa?

johtopäätös

näin ollen päädymme siihen, että Pythonilla ei ole sisäänrakennettua kytkinkotelon konstruktiota, vaan voimme käyttää sen sijaan sanakirjaa.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *