Конструкция match-case в Python

В Python, начиная с версии 3.10 есть специальная конструкция match-case, которая используется для выбора одного значения из некоторого ряда значений. Ее синтаксис:

match переменная: case 'значение1': ''' здесь код, который выполнится в случае, если переменная имеет значение1 ''' case 'значение2' ''' здесь код, который выполнится в случае, если переменная имеет значение2 ''' case _: ''' здесь код, который выполнится в случае, если значение ни с чем не совпало '''

Пусть у нас есть переменная tst:

tst = 'a'

 Давайте пропишем в условии разные варианты, которые может принять переменная: 

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

Также с помощью оператора | можно в каждом варианте задать выборку нужных значений:

match tst: case 'a' | 'c': print('a or c') case 'b' | 'd': print('b or d') case _: print('tst is unknown')

Пусть в переменной num хранится одно из чисел: 1, 2, 3 или 4, содержащее номер поры года. Выведите название поры года, содержащееся в числе.

Пусть в переменной num хранится номер месяца от 1 до 12. Выведите название поры года, соответствующее этому месяцу.

Пусть в переменной tst хранится какой-либо тип данных. Напишите вариант, если переменная является строкой. Если она относится к целому числу или числу плавающей точкой, то выведите одно сообщение 'tst is number'.

uz ru