Конструкция 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')
№1
Пусть в переменной num хранится одно из чисел: 1, 2, 3 или 4, содержащее номер поры года. Выведите название поры года, содержащееся в числе.
№2
Пусть в переменной num хранится номер месяца от 1 до 12. Выведите название поры года, соответствующее этому месяцу.
№3
Пусть в переменной tst хранится какой-либо тип данных. Напишите вариант, если переменная является строкой. Если она относится к целому числу или числу плавающей точкой, то выведите одно сообщение 'tst is number'.