Match-case-rakenne Pythonissa
Pythonissa, versiosta 3.10 alkaen,
on erityinen match-case-rakenne,
jota käytetään valitsemaan yksi arvo
tietystä arvosarjasta. Sen syntaksi:
match muuttuja:
case 'arvo1':
'''
tässä on koodi, joka suoritetaan
jos muuttujan arvo on 1
'''
case 'arvo2'
'''
tässä on koodi, joka suoritetaan
jos muuttujan arvo on 2
'''
case _:
'''
tässä on koodi, joka suoritetaan
jos arvo ei vastaa mitään
'''
Olkoon meillä muuttuja tst:
tst = 'a'
Asetetaan ehtoon eri vaihtoehdot, jotka muuttuja voi saada:
match tst:
case 'a':
print('a')
case 'b':
print('b')
case _:
print('tst on tuntematon')
Myös |-operaattorilla voidaan
jokaisessa tapauksessa määrittää haluttujen
arvojen valinta:
match tst:
case 'a' | 'c':
print('a tai c')
case 'b' | 'd':
print('b tai d')
case _:
print('tst on tuntematon')
Olkoon muuttujassa num tallennettuna
yksi luvuista: 1, 2, 3
tai 4, joka sisältää vuodenaikan numeron.
Tulosta vuodenaikan nimi, joka vastaa
numeroa.
Olkoon muuttujassa num tallennettuna
kuukauden numero 1:stä 12:een.
Tulosta vuodenaika, joka vastaa
tätä kuukautta.