TGViewer
Python Nation🐍🇺🇦 Python Nation🐍🇺🇦 @pythonnation · 2.17K subscribers
Post #717 1.09K
Python 3.15 додає lazy імпорти і це реально корисно

Якщо ти хоч раз запускав CLI-утиліту або скрипт і думав "чому воно так довго стартує" - ця фіча для тебе.

Проблема проста. Python при запуску завантажує всі модулі одразу, навіть якщо половина з них потрібна тільки в одному з десяти сценаріїв. Великий проєкт з pandas, numpy і ще купою залежностей - і ти вже чекаєш секунди просто щоб побачити --help.

Раніше це вирішували переносом імпортів всередину функцій. Працює, але код стає брудним і незрозумілим.

Тепер у Python 3.15 є нормальне рішення - ключове слово lazy:

lazy import pandas
lazy from json import dumps


Модуль не завантажується поки ти його не використаєш. Перший раз звернувся - тоді й завантажується.

lazy import pandas

if user_wants_report:
df = pandas.DataFrame(data) # тільки тут pandas реально завантажиться


Якщо користувач не запитав звіт - pandas взагалі не торкнувся пам'яті.

Пара моментів які варто знати:

lazy працює тільки на рівні модуля, не всередині функцій
from module import * не підтримується
— помилку в імпорті побачиш не одразу, а коли вперше використаєш модуль

За даними з PEP - CLI-утиліти стартують на 50-70% швидше, великі застосунки споживають на 30-40% менше пам'яті.

Python 3.15 ще не вийшов фінально, але PEP вже прийнятий. Якщо цікаво розібратись детальніше то ось першоджерело: https://peps.python.org/pep-0810
  • 🔥 6
More from @pythonnation
  1. May 26, 2026Post #716
  2. Dec 2, 2024🔍 Інтроспекція в Python: як програмі бачити себе зсередини Інтроспекція — це здатність пр…
  3. Feb 20, 2022Всем привет! Сегодня 20 февраля, а это означает, что сегодня день появления на свет языка…
  4. Mar 4, 2020Channel created
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →