Оператор match в Python отличается от традиционного оператора if тем, что предоставляет более чистый и эффективный способ сопоставления значений с различными образцами. 1 Он напоминает оператор switch в других языках программирования, но обладает более выразительным синтаксисом и расширенной функциональностью. 1
В простейшем случае оператор match последовательно сравнивает значение выражения с заранее заданными в операторах case. 3 А затем выполняет код в операторе case, значение в котором соответствует проверяемому. 3 Обычно в самом низу ставится блок действий по умолчанию, он выполняется в том случае, когда не найдётся ни один из шаблонов. 1
В отличие от if-elif, в операторе match нельзя использовать логические выражения. 2 После case должен находиться литерал, конкретное значение, выражение, возвращающее однозначный результат. 2