TGViewer
Channel Public Channel
Python Nation🐍🇺🇦

Python Nation🐍🇺🇦

@pythonnation

Канал для всіх, хто вивчає Python: поради, приклади коду, бібліотеки, лайфхаки та актуальні новин👨‍💻🐍

По всім питанням👉 @giorg_jr
Subscribers
2.17K
Photos
1
Videos
0
Links
1
Recent Posts 5 shown
Post #717 1.08K
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
Post #716 1.26K
  • 👍 1
  • 🔥 1
Post #714 6.03K
🔍 Інтроспекція в Python: як програмі бачити себе зсередини

Інтроспекція — це здатність програми досліджувати свою структуру під час виконання. У Python це зручно реалізовано через вбудовані функції.

Ось декілька корисних прикладів:

type(obj) — визначає тип об’єкта.
dir(obj) — показує доступні атрибути та методи.
getattr(obj, attr) — отримує значення атрибута.
isinstance(obj, class) — перевіряє, чи об'єкт є екземпляром класу.
help(obj) — виводить документацію об'єкта.

Це корисно для:
🔹дебагінгу та аналізу об'єктів
🔹динамічного створення функцій чи класів
🔹розробки IDE, автозаповнення або генерації документації

Пам’ятайте, що надмірне використання інтроспекції може ускладнити код. Використовуйте її з розумом! 🐍✨
Post #309 4.55K
Всем привет! Сегодня 20 февраля, а это означает, что сегодня день появления на свет языка программирования Python🐍. Сегодня Python исполняется 3️⃣1️⃣ год. За эти года, Python стал одним из самых популярных📈 языков программирования в мире. Что же, пожелаю дальнейшего развития и покорения новых высот Python.
  • 🎉 32
  • ❤ 6
  • 🥰 1
  • 👏 1
  • 🤔 1
Post #1
Channel created

About this channel

How can I read @pythonnation without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Python Nation🐍🇺🇦: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Python Nation🐍🇺🇦 have?
Python Nation🐍🇺🇦 (@pythonnation) has 2.17K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Python Nation🐍🇺🇦 know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
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 →