finally
при работе с ресурсамиВ Python важно гарантированно освобождать ресурсы (файлы, соединения, сокеты). Если этого не делать, возможны утечки памяти и зависание программы.
finally
или конструкцию with
для автоматического управления ресурсами.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
loguru.logger
— это мощный и удобный логгер, который упрощает логирование в Python. Он поддерживает цветной вывод, автоматическое форматирование и удобное управление логами.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🗿2🔥1
Path.resolve()
из модуля pathlib
позволяет получить абсолютный путь к файлу или директории, автоматически обрабатывая символические ссылки и относительные пути. Это удобный способ работы с файловой системой в Python.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥1
contextlib.suppress()
позволяет временно подавлять определённые исключения в блоке кода. Это удобная альтернатива try-except
, если нам не нужно обрабатывать ошибку, а просто игнорировать её.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥1
🐍Пишете на Python, но с веб-разработкой пока не срослось. Попробовали Django — слишком громоздко. Flask — вроде проще, но чего-то не хватает. В итоге на бэкенде сплошной хаос, а продакшену страшно доверить даже тестовый сервер.
FastAPI решает эти проблемы. Он быстрый, удобный и дружит с асинхронностью. Хотите понять, как писать API и рендерить страницы без боли? Приходите на открытый урок «Знакомство с веб-разработкой на FastAPI» 27 февраля в 20:00 (мск).
Мы разберём:
- Как работает FastAPI и почему он быстрее Flask
- Как писать JSON API и рендерить HTML в одном приложении
- Как подружить FastAPI с Jinja2 и обрабатывать формы
Спикер Сурен Хоренян — бэкенд-разработчик на Python, open-source contributor, руководитель команды в ВК Рекламе.
Участники получат скидку на большое обучение «Python Developer. Basic».
👉Регистрируйтесь на вебинар: https://otus.pw/tvXs/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
FastAPI решает эти проблемы. Он быстрый, удобный и дружит с асинхронностью. Хотите понять, как писать API и рендерить страницы без боли? Приходите на открытый урок «Знакомство с веб-разработкой на FastAPI» 27 февраля в 20:00 (мск).
Мы разберём:
- Как работает FastAPI и почему он быстрее Flask
- Как писать JSON API и рендерить HTML в одном приложении
- Как подружить FastAPI с Jinja2 и обрабатывать формы
Спикер Сурен Хоренян — бэкенд-разработчик на Python, open-source contributor, руководитель команды в ВК Рекламе.
Участники получат скидку на большое обучение «Python Developer. Basic».
👉Регистрируйтесь на вебинар: https://otus.pw/tvXs/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍5🔥1
inspect.signature()
позволяет получать информацию о сигнатуре функции, включая её аргументы, значения по умолчанию и аннотации. Это полезно для метапрограммирования, генерации документации и анализа кода во время выполнения.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥1
У вас была ситуация, когда вы открываете новый проект или библиотеку и пытаетесь разобраться в коде?
Если в этом проекте используются аннотации типов - вы справитесь с этой задачей намного быстрее. Также на уроке рассмотрим библиотеку pydantic, которая позволяет вывести на новый уровень работу с данными в Python.
Узнайте, как эффективно реализовать интернационализацию и локализацию в Spring-приложениях.
⏺ 26 февраля в 20:00 МСК
Бесплатно. Урок в рамках старта курса «Python для аналитики» от Otus.
💬 Ссылка на регистрацию:
https://clck.ru/3GcbT5
Если в этом проекте используются аннотации типов - вы справитесь с этой задачей намного быстрее. Также на уроке рассмотрим библиотеку pydantic, которая позволяет вывести на новый уровень работу с данными в Python.
Узнайте, как эффективно реализовать интернационализацию и локализацию в Spring-приложениях.
Бесплатно. Урок в рамках старта курса «Python для аналитики» от Otus.
https://clck.ru/3GcbT5
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥2🤔2
contextlib.nullcontext()
создаёт пустой контекстный менеджер, который не выполняет никаких действий. Это полезно, когда нужно условно использовать with
, но в некоторых случаях контекстный менеджер не требуется.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥1
importlib.resources.files()
позволяет безопасно работать с ресурсами внутри пакетов без необходимости вручную определять пути. Это удобный способ загружать файлы внутри модулей.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥1🏆1
Пояснение
Counter подсчитывает количество повторений элементов в списке. 'apple' встречается 3 раза, а 'grape' отсутствует, поэтому counter['grape'] возвращает 0, а не KeyError. Код выполняется без ошибок.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤🔥1
👍7⚡2
gc.freeze()
фиксирует все уже существующие объекты в памяти, исключая их из будущих сборок мусора. Это полезно для оптимизации долгоживущих процессов, например, серверов или CLI-приложений, снижая нагрузку на сборщик мусора.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥1
threading.excepthook()
позволяет перехватывать исключения, возникшие в потоках, что полезно для логирования и предотвращения неожиданного завершения программы.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥1
В Python ключи в
dict
должны быть неизменяемыми (immutable). Если использовать изменяемые объекты (списки, множества), это приведёт к TypeError
, так как такие объекты нехешируемы.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤🔥1
sys.unraisablehook
позволяет перехватывать исключения, которые не могут быть обработаны обычным try-except
, например, ошибки в деструкторах (__del__
). Это полезно для отладки и логирования неожиданных ошибок.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤🔥1
faulthandler.dump_traceback()
позволяет принудительно вывести текущий стек вызовов без аварийного завершения программы. Это полезно для отладки зависших процессов или анализа выполнения кода.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥1
sys.getallocatedblocks()
возвращает количество блоков памяти, выделенных интерпретатором Python. Это полезно для отладки утечек памяти и анализа работы сборщика мусора.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3
Пояснение
Функция map() применяет лямбда-функцию lambda x: x ** 2 ко всем элементам списка numbers. list(squared) превращает объект map в список [1, 4, 9, 16]. Код выполняется без ошибок.
Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔5🍾3
👍12🤔1
types.GenericAlias
позволяет программно создавать типизированные аннотации, как если бы они были объявлены с list[int]
, dict[str, float]
и другими параметризованными типами.Python Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥1