TGViewer
Python/ django Python/ django @pythonl · 58.5K subscribers
Post #3779 5.15K
🖥 Ленивые импорты в Python — lazy import

🟡Все import'ы, по умолчанию, выполняются во время загрузки скриптов. Это не всегда хорошо: представим себе CLI-утилиту с 2 командами:
$ ./utility.py --help
./utility.py usage:

* --help Shows this message
* hard_work Does all the work

$ ./utility.py hard_work
Importing the universe...
Looking for stars*...
Done!

1 команда показывает документацию, 2 — делает что-то полезное. Если для одной из команды требуются некие импорты (возможно тяжёлые), они будут выполняться для всех команд, даже если они там не нужны. Это сказывается на времени запуска скрипта.

🟡Посмотреть, какие импорты выполняются при запуске скрипта можно с помощью встроенного профайлера:
$ PYTHONPROFILEIMPORTTIME=1 ./utility.py --help
import time: self [us] | cumulative | imported package
import time: 1000 | 1000 | the_universe
import time: 2000 | 2000 | stars
...

Для чтения таких файликов рекомендую использовать tuna, визуализатор профайлов:
$ PYTHONPROFILEIMPORTTIME=1 ./utility.py --help 2> import.log
$ tuna import.log


🟡Что делать с такими импортами, которые нужны не всегда? Использовать ленивые импорты!

▶️ Подробнее про ленивые импорты

@pythonl
  • 👍 11
  • 🔥 5
  • ❤ 3
  • 🤩 1
More from @pythonl
  1. Oct 16, 2026🧠 Tencent открыла Hy Memory: общую память для ИИ-ассистентов и редакторов кода Система об…
  2. Oct 15, 2026🖥 Datadog научила профилировщик Python понимать asyncio: флеймграфы со «стеками из стеков…
  3. Oct 14, 2026📱 35 млрд параметров на смартфоне с потреблением около 3 ГБ оперативной памяти. OpenBMB п…
  4. Oct 12, 2026⚡️ Overmind - open-source слой для автоматической оптимизации AI-агентов. Вместо ручного т…
  5. Oct 12, 2026🖥 Python-дайджест недели: агенты с онтологией, рантайм-проверка типов и SQLite в проде Со…
  6. Oct 10, 2026🐍 Ротация прокси в Python может обходиться без списка IP и `random.choice()` Если провайд…
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 →