Випуск мови програмування Python 3.14
Після року розробки опубліковано значний випуск мови програмування Python 3.14. Нова вітка буде підтримуватися протягом півтора року, після чого ще три з половини року для неї не будуть формуватися ісправлення з усуненням уязвимостей.
Серед новин, доданих у Python 3.14 (1, 2, 3):
Реалізована офіційна підтримка збірки CPython без глобальної блокування інтерпретатора (GIL, Global Interpreter Lock). Збірка без GIL дозволяє позбавитися від проблем з розпалюванням операцій на багатоядерних системах, викликаних тим, що глобальна блокування не допускає паралельне звернення до розділених об'єктів з різних потоків. Відключення GIL призводить до додаткових вкладних витрат, визваних змінами в збірці мусора, системі управління пам'яттю та примітивах для організації блокировок. Наприклад, із-за використання підрахунку ссылок для ізоляції потоків спостерігається зниження продуктивності однопоточних сценаріїв приблизно на 10%. При цьому подібні накладні витрати можуть компенсуватися розпараллеливанием операцій.
Додана підтримка t-строк (буквально з префіксом 't'), що дозволяє використовувати синтаксис, схожий на f-строки, для створення власних обробників шаблонів у рядках. На відміну від f-строк t-строки повертають об'єкт, роздільно зберігаючи статичні рядкові дані та надані значення. Раздельное хранение дозволяє зв'язувати власні обработчики, що впливають тільки на підставні значення. Наприклад, можна підключити обробник для перекладу поданих значень у верхній реєстр або для екранування спецсимволів при підстановці в рядку зовнішніх даних.
У стандартну бібліотеку додано модуль concurrent.interpreters, який дозволяє одночасно виконувати в одному процесі кілька ізольованих інших копій Python-інтерпретатора. Раніше дана можливість була доступна тільки через C-API. Одночасне виконання кількох інтерпретаторів може використовуватися для розпалювання операцій за аналогією із запуском кількох паралельно виконуваних процесів, але на відміну від багатопроцесорної моделі витрачається менше ресурсів. На рівні додатків для розділення операцій за інтерпретаторами можуть використовуватися моделі гравців і CSP (взаємодія послідовних процесів).
У CPython реалізований новий тип інтерпретатора, що використовує хвостові виклики між C‑функціями, реалізуючи окремі байтки Python, замість однієї великої функції з вираженим switch/case. При зборі в Clang 19 новий інтерпретатор демонструє підвищення продуктивності на 3-5% при виконанні тестів pyperformance. Новий інтерпретатор доступний у якості опцій для архитектури x86-64 і AArch64 і вимагає для збірки мінімум версії Clang 19 (підтримка GCC обіцяє пізніше).
Забезпечена відкладена обробка анотацій для функцій, класів і модулів. Анотації тепер не обробляються відразу, а зберігаються у формі спеціальних функцій і вираховуються при виникненні необхідності. Нова поведінка дозволяє спростити роботу з анотаціями та знизити вкладні витрати на обробку анотації під час виконання. Для інспектування відкладених анотацій запропоновано модуль annotationlib.
У стандартну бібліотеку додано пакет стиснення, що забезпечує функції стиснення та розпакування даних за допомогою різних алгоритмів. Крім модулів compression.lzma, compression.bz2, compression.gzip і compression.zlib, що надають доступ до функціональності, раніше доступної в модулях lzma, bz2, gzip і zlib, додано новий модуль compression.zstd з реалізацією алгоритму ZSTD (Zstandard).
У виразах "except" і "except*" дозволено не поміщати вміст у скобки, якщо у вираженні показано кілька виключених типів і не використовується ключове слово "as".
В інтерактивній оболонці PyREPL реалізована підсвітка синтаксису. Включений кольоровий висновок в CLI-утилітах з модулів unittest, argparse, json і calendar.
Доданий інтерфейс для підключення зовнішніх відладчиків і профілювачів до вже працюючих процесів CPython, не вимагає встановлення та перезапуску та не впливає на продуктивність.
У модуль pdb додана підтримка видаленого підключення до працюючих Python-процесів. Наприклад, для підключення до процесу з номером 1234 можна використовувати команду "python -m pdb -p 1234".
У модуль uuid додані функції uuid6(), uui
Схожі статті
- Apple планує представити на цьому тижні три нові продукти
- Apple запустить розробку конкурента ChatGPT і збере команду для покращення Siri
- У Firefox додали флеш- плеєр Shumway , написаний на HTML5
- Опубліковано мобільну платформу LineageOS 23, засновану на Android 16
- Хакери порушили роботу європейських аеропортів, зламавши софт для реєстрації пасажирів
- Лінус Торвальдс розраховує випустити ядро Linux 5.0 влітку 2018 року
- Розкрита причина «гальм» старих іPhone
- Apple ще раз доведеться відповісти за створення штучних перешкод для сторонніх програм на iOS
- Перше в історії SMS-повідомлення продали як NFT за €100 тисяч
- ШІ знайшов себе у маркетингу: кожен четвертий прес-реліз написаний нейромережею
- Новини
- Учбові посібники
- Цікава фізика. Механіка
- Цікава фізика. Молекулярні явища і теплота
- Цікава фізика. Електрика
- Цікава фізика. Оптика
- Цікава фізика. Розваги
- CISCO CCNA 2
- Зворотній зв'язок
- Партнери
- Нові оголошення
- 08.01.2026 10:30
Станкомплект - 12.12.2025 10:25
КиевМетСервис - 20.11.2025 10:12
Адвокатське бюро Уляни Хромʼяк «Акула права» - 07.11.2025 09:21
Фотограф Відеограф Весілля Ювілей Випускний, альбоми конференція Стрім - 03.11.2025 06:52
Ремонт ноутбуков в Киеве на дому, в сервисе и онлайн
- Нові компанії