Η δομή 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. Εκτυπώστε το όνομα της εποχής του χρόνου, που αντιστοιχεί σε αυτόν τον μήνα.