Намечается по-настоящему интересное обновление. Поделиться
Несколько дней назад разработчики выпустили первую бета-версию Python 3.10 — последней номерной версии языка на сегодняшний день. И несмотря на то, что это тестовая версия, уже сейчас на её основе можно узнать, что нас ждёт с грядущим крупным обновлением.
Сопоставление структурных шаблонов
После нескольких неудачных попыток внедрить switch/case в Python, разработчики языка решили пойти иным путём. Они решили реализовать похожий функционал через сопоставление структурных шаблонов:
command = input () match command.split (): case ["quit"]: quit () case ["load", filename]: load_from (filename) case ["save", filename]: save_to (filename) case _: print (f"Command '{command}' not understood")
Улучшение отчётов об ошибках
Теперь отчёт об ошибках в коде будет более наглядно показывать, что именно было сделано неверно.
Отчёт в более старых версиях Python:
python print («Hello» print («What's going on?») File «.test.py», line 2 print («What's going on?») ^ SyntaxError: invalid syntax
Отчёт в Python 3.10:
File «.test.py», line 1 print («Hello» ^ SyntaxError: '(' was never closed
Прочие нововведения
- оператор with теперь поддерживает многострочный синтаксис в скобках;
- переменные можно будет объявлять как псевдонимы типов;
- для сборки CPython потребуется OpenSSL 1.1.1 или новее.
С полным списком можно ознакомиться в материале по ссылке.
Источник: Sudosecurity
Источник: tproger.ru