Рубріки: Новини

Завдяки lazy imports програми на Python будуть запускатись швидше

Дмитро Сімагін

Програми, написані на Python, тепер будуть швидше запускатись завдяки затвердженню пропозиції PEP 810 Explicit lazy imports (Явний лінивий імпорт). Оновлення дозволяє скриптам відкладати завантаження імпортованих бібліотек до моменту їх фактичного застосування, пише The Register.

Розробники можуть відзначати окремі операції імпорту, як «ліниві» за допомогою явного синтаксису. Це дає програмам на Python скорочення часу запуску, споживання пам’яті та обсягу непотрібної роботи. 

Пропозиція зберігає повну зворотну сумісність: звичайні оператори імпорту залишаються незмінними, а lazy імпорт включається лише після явного запиту.

Імпорт модулів у Python — це одночасно і перевага, і проблема. Перевага, оскільки кілька операторів import можуть значно розширити функціональність програми. Водночас, це може стати проблемою, тому що імпортовані символи можуть ніколи не бути використані, що потенційно збільшує час запуску. Гарним прикладом цього може стати виклик програми з командного рядка за допомогою чогось на кшталт –help, через що виникає необхідність чекати, поки завантажаться непотрібні імпортовані елементи. Тепер, завдяки лінивому імпорту, завдання відкладається до того часу, поки воно дійсно не знадобиться.

Пропозицію щодо вдосконалення Python (PEP 810) було висунуто Пабло Сальгадуном, членом Керівної ради, 3 жовтня та схвалено 3 листопада.

Хоча в Python існує кілька способів реалізувати лінивий імпорт, але в самій мові досі немає ніяких вбудованих рішень. Попередні спроби удосконалення зазнали невдачі. PEP 690 було відхилено частково тому, що ця пропозиція робила лінивий імпорт стандартним, і це викликало занепокоєння щодо фрагментації спільноти та зворотної сумісності. Паралельно розробники створили власні обхідні способи, а деякі організації навіть відокремили форк CPython.

Прогнозується, що PEP 810 досягне успіху, оскільки лінивий імпорт зберігає зворотну сумісність та стандартизує те, що зараз є фрагментованим ландшафтом користувацьких рішень.

Останні статті

Генератор відео Sora від OpenAI став доступним на Android

Розроблений OpenAI сервіс генерації відео Sora тепер доступний також й на Android. Скористатись ним вже…

05.11.2025

Парне програмування зі штучним інтелектом менш ефективне, ніж з людиною — дослідження

Розробники, які практикують парне програмування з помічником на основі штучного інтелекту, демонструють менш критичне ставлення…

05.11.2025

Дистрибутив Linux Debian буде вимагати «жорстку залежність» до Rust

З травня 2026 року менеджер пакетів APT у дистрибутиві Linux Debian матиме «жорстку залежність» до…

04.11.2025

Гранти для Web3-продуктів: у Львові пройде безкоштовний хакатон ETHLviv Impulse

ETHLviv Impulse — безкоштовний одноденний хакатон із грантами для найсильніших команд — пройде 16 листопада…

04.11.2025

«Найбільший злом 2025 року»: хакер атакував криптопротокол Balancer DeFi і викрав понад $128 мільйонів

Децентралізований фінансовий (DeFi) протокол Balancer оголосив, що хакери атакували його пули v2, в результаті чого…

04.11.2025

«Демонструє постійну тенденцію брехати»: колишній соратник Сема Альтмана дав покази проти нього

Події дворічної давнини, коли в OpenAI стався заколот, який призвів до тимчасового відсторонення Сема Альтмана,…

04.11.2025