#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Forwarded from HABR FEED + OPENNET
Создаем модуль для Telegram bot api на Python
https://habr.com/ru/post/677456/?utm_source=habrahabr&utm_medium=rss&utm_campaign=677456
Tags: Python, python, telegram, telegram bots, http, asyncio, aiohttp, python3, pytelegrambotapi, aiogram, с нуля
Author ivanov_l #habr
Forwarded from karpov.courses
Мы стараемся время от времени напоминать вам о существовании встроенных модулей Python, которые ни в чём не уступают сторонним решениям, а часто даже оказываются проще и эффективнее.

В этот раз мы подготовили шпаргалку по datetime — модулю из стандартной библиотеки, предоставляющему несколько классов и множество методов для обработки времени и дат. Рассмотрим самые базовые и востребованные из них.

А если перед вами стоит нетривиальная задача: например, обработка данных из разных часовых поясов или расшифровка строк нестандартного формата, мы рекомендуем ознакомиться с полной документацией datetime.
Forwarded from Big Data Science [RU]
💥Вместо циклов: 3 альтернативы в Python
Разработчики и Data Scientist’ы знают, что циклы в Python работают медленно. Вместо них можно использовать следующие альтернативы:
• Map – позволяет применить функцию к каждому значению итерируемого объекта (список, кортеж и т. д.);
• Filter – подойдет для фильтрации значений из итерируемого объекта (списка, кортежа, наборов и т. д.). Условия фильтрации задаются внутри функции, которая передается в качестве аргумента функции фильтра.
• Reduce - применяется итеративно ко всем значениям итерируемого объекта и возвращает только одно значение.
Примеры использования: https://medium.com/codex/3-most-effective-yet-underutilized-functions-in-python-d865ffaca0bb
Forwarded from Big Data Science [RU]
🗒Нужно логировать события Python-приложения? Есть специальный модуль!
Python-библиотека logging (https://docs.python.org/3/library/logging.html) определяет функции и классы, реализующие гибкую систему регистрации событий для приложений и библиотек. Главное преимущество API-интерфейса логироавния, предоставляемого модулем этой стандартной библиотеки, - возможность регистрации всех событий. Поэтому лог Python-приложения может включать собственные сообщения, интегрированные с сообщениями из сторонних модулей.
Модуль состоит из следующих классов:
• Регистраторы предоставляют интерфейс, который непосредственно использует код приложения
• Обработчики отправляют записи журнала (созданные регистраторами) в место назначения
• Фильтры обеспечивают более точное определение записей журнала для вывода
• Форматеры определяют расположение записей журнала в конечном выводе.
Уровень лога показывает его серьезность, т.е. насколько важно отдельное сообщение. В базовом уровне логирования DEBUG имеет самый низкий приоритет, а CRITICAL — самый высокий. Если определить регистратор чувствительным к сообщениям журнала, начиная с уровня DEBUG, то все все наши зарегистрированные сообщения будут отображаться, поскольку DEBUG является самым низким уровнем. Можно настроить отображение только событий с типом ERROR и CRITICAL.
Пример кода: https://medium.com/@DavidElvis/logging-for-ml-systems-1b055005c2c2
Forwarded from Big Data Science [RU]
🖕🏻3 повода использовать оператор присваивания в Python и пара причин этого не делать
Использование оператора присваивания значений, обозначаемого :=, дает следующие преимущества:
Сокращение количества вызовов функций, например, result = [y := func(x), y**2, y**3] вместо result = [func(x), func(x)**2, func(x)**3]
Сокращение вложенных условных выражений, например, при использовании сопоставления регулярных выражений за счет удаления вложенных условий if
Упрощение циклов while, например, при построчном чтении файлов или при получении данных из сокета. Вместо фиктивного бесконечного цикла while с делегированием потока управления оператору break можно использовать оператор присваивания для переназначения значения команды, а затем применить его в условном цикле while в той же строке, что сделает код намного короче.
Разумеется, есть ограничения для использования этого оператора. Например, не рекомендуется применять его с with, т.к. при работе с ContextManager() контекст привязывается к возвращаемому значению, т.е. к результату выполнения этого метода. Это может создать трудности при отладке.
Кроме того, присваивание следует заключать в круглые скобки, чтобы убедиться, что результат присваивается переменной, иначе вычисление может быть выполнено в другом порядке.
Примеры кода: https://betterprogramming.pub/should-you-be-using-pythons-walrus-operator-yes-and-here-s-why-36297be16907
Forwarded from Zen of Python
Мифы и легенды современного Python

По устоявшейся традиции разработчики делятся на два типа: одни считают, что Python подходит для решения абсолютно любых задач, другие же настаивают на использовании различных инструментов для каждой задачи. И каждый по-своему прав.

В этой статье собраны популярные стереотипы и мифы о Python, которые разобраны опытными разработчиками:

https://habr.com/ru/company/evrone/blog/685264/