match-case კონსტრუქცია Python-ში

Python-ში, ვერსიიდან 3.10 დაწყებული, არსებობს სპეციალური კონსტრუქცია match-case, რომელიც გამოიყენება ერთი მნიშვნელობის არჩევისთვის მნიშვნელობათა გარკვეული სერიიდან. მისი სინტაქსი:

pythonmatch varuable:
  case 'value1':
    '''
      აქ იწერება კოდი, რომელიც შესრულდება
      თუ ცვლადს აქვს მნიშვნელობა 1
    '''
  case 'value2'
    '''
      აქ იწერება კოდი, რომელიც შესრულდება
      თუ ცვლადს აქვს მნიშვნელობა 2
    '''
  case _:
    '''
      აქ იწერება კოდი, რომელიც შესრულდება
      თუ მნიშვნელობა არ ემთხვევა არცერთს
    '''

დავუშვათ, გვაქვს ცვლადი tst:

pythontst = 'a'

ჩავწეროთ პირობაში სხვადასხვა ვარიანტები, რომელიც შეიძლება მიიღოს ცვლადმა:

pythonmatch tst:
  case 'a':
    print('a')
  case 'b':
    print('b')
  case _:
    print('tst is unknown')

ასევე ოპერატორის | დახმარებით შესაძლებელია თითოეულ ვარიანტში მივუთითოთ საჭირო მნიშვნელობების არჩევანი:

pythonmatch tst:
  case 'a' | 'c':
    print('a or c')
  case 'b' | 'd':
    print('b or d')
  case _:
    print('tst is unknown')
Задание 1

დავუშვათ, ცვლადში num ინახება ერთ-ერთი რიცხვი: 1, 2, 3 ან 4, რომელიც შეიცავს წელიწადის დროს ნომერს. გამოიტანეთ წელიწადის იმ დროის სახელწოდება, რომელიც შეიცავს რიცხვში.

Задание 2

დავუშვათ, ცვლადში num ინახება თვის ნომერი 1-დან 12-მდე. გამოიტანეთ წელიწადის იმ დროის სახელწოდება, რომელიც შეესაბამება ამ თვეს.