Конструкция 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'
.