У Python з'являться оператори для звіряння з шаблоном (Pattern Matching) — match
і case
. Про це керівники проєкту повідомили про це у розсилці 9 лютого.
Автори визнають, що це суттєва зміна, яка впливає на різні аспекти семантики й викликає сумніви у деяких учасників. Та після тривалих обговорень її все одно вирішили додати як «чудове доповнення мови Python».
Синтаксис для звіряння з шаблоном можна знайти у мовах Haskell, Erlang, Scala, Elixir і Ruby (пропозиція для JavaScript зараз розглядається). У Python довгий час застосовували конструкцію if ... elif ... elif ... else
, але новий підхід оператори визнали більш функціональним й лаконічним. Оператор match
зможе порівнювати результати певних виразів зі списком зразків оператора case
(ось детальне обґрунтування й туторіал).
Розробники зазначають, що нова функція має супроводжуватись ретельною документацією та специфікаціями — їх планують створити до першого релізу Python 3.10 (тож поки документації не буде, не буде й релізу).
Ще немає коментарів