Articles

2 egyszerű módja annak, hogy végre Python Switch Case Statement

ingyenes Python tanfolyam 25 valós idejű projektek indul most!!

az utolsó Python Bemutatónkban XML feldolgozást tanulmányoztunk a Python 3-ban. Ma megvizsgáljuk, hogyan kell végrehajtani a Python Switch Case nyilatkozatot.

más nyelvektől eltérően, mint a Java programozási nyelv és a C++, A Python nem rendelkezik kapcsolótok konstrukcióval. Ezzel együtt, látni fogjuk, hogyan kell dolgozni egy kiskaput Python switch case nyilatkozat.

tehát beszéljük meg a Python Switch Case Statement megvalósításának különböző módjait.

2 egyszerű módja annak, hogy végre Python Switch Case Statement

2 egyszerű módja annak, hogy végre Python Switch Case Statement

mi Python Switch Case Statement?

Python nem egy egyszerű kapcsoló-case konstrukció. Jön egy Java vagy C++ háttér, előfordulhat, hogy ez egy kicsit furcsa.

C++ vagy Java nyelven van valami hasonló:

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

de a Python nem rendelkezik ezzel.

tehát ahhoz, hogy ezt megkerüljük, a Python beépített szótárszerkezetét használjuk az esetek végrehajtására, és eldöntöttük, hogy mit tegyünk, ha egy eset teljesül.

azt is megadhatjuk, hogy mit tegyünk, ha egyik sem teljesül.

megoldások Python Switch Case Statement

az egyik kiút egy if-elif-else létra megvalósítása lenne. Inkább egy szótár segítségével térképezhetjük az eseteket a funkcionalitásukhoz.

itt definiálunk egy függvényhetet (), hogy megmondjuk, melyik nap a hét egy bizonyos napja. A váltó egy szótár, amely elvégzi ezt a leképezést.

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

most, hogy felhívja a hét() különböző értékeket.

>>> week(2)

Kimenet

‘kedd’
>>> week(0)

Kimenet

‘vasárnap’
>>> week(7)

Kimenet

‘Érvénytelen hét napja’
>>> week(4.5)

Kimenet

‘Érvénytelen hét napja’

Mint látható, az értékek más, mint az általunk említeni a váltó, csak kiírja, hogy “Érvénytelen hét napja”. Ez azért van, mert azt mondjuk, hogy erre a get() módszer egy szótár.

a. Python függvények használata & Lambdas

a szótárban függvényeket és lambdákat is használhatunk.

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

Output

‘Invalid’
>>> indirect(2)

Output

‘two’
>>> indirect(1)

Output

“one”
>>> indirect(0.5)

output

‘invalid’

B. a Python osztályok

használatával ez a koncepció osztályok segítségével választhat egy módszert futásidőben.

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

Output

‘two’
>>> s.indirect(4)

Output

‘Invalid’
>>> s.number_1()

Output

“one’

tehát ez az egész a Python switch case statement-ről szólt. Remélem, tetszik a bemutató.

Python Interjú kérdések Switch Case Statement

  1. van Python switch case statement?
  2. hogyan hajt végre egy kapcsolótokot Python-ban?
  3. mi a helyzet a switch utasítás Python?
  4. magyarázza el a Python switch case utasítás példával.
  5. hány esetben lehet a switch utasítás Python?

következtetés

ezért arra a következtetésre jutunk, hogy a Python nem rendelkezik beépített kapcsolóház konstrukcióval, ehelyett szótárat használhatunk.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük