8 Марта🌸 вышел альфа-релиз Python 3.10.0a6
Уже сейчас можно его скачать и попробовать новый синтаксис Switch Statement, о котором я упоминал ранее.
В Python его назвали Structural pattern matching
Итак, как это теперь выглядит?
match QUERY:
case VALUE1:
return 1
case VALUE2:
return 2
case VALUE3:
return 3
case _: # default
return 0
Для объединения нескольких значений в одном кейсе используем вертикальную черту
match QUERY:
case VALUE1 | VALUE2:
return 3
case _: # default
return 0
Также можно добавлять дополнительные проверки с if
match QUERY:
case VALUE1:
return 1
case VALUE2 | VALUE3 if x < 5:
return 2
case _: # default
return 0
Выглядит как синтаксический сахар для конструкции if..elif..else. В целом не плохо, но и непривычно)
#tricks