Plumbum
Она упрощает автоматизацию задач, которые требуют вызова командной строки из\ кода. Это может быть запуск скриптов, утилит, вызов программ для обработки данных и т. д.
Основные возможности библиотеки:
— Удобный синтаксис для запуска команд и программ из Python кода. Позволяет вызывать команды командной строки так же просто, как обычные функции.
— Автоматическое формирование командной строки. Можно передавать аргументы и параметры в виде обычных переменных,
— Перенаправление ввода/вывода. Поддержка стандартных операторов Unix для работы с потоками данных.
— Проверка кодов возврата и обработка ошибок.
— Локальное или удаленное выполнение. Возможность запускать команды как локально, так и по SSH на удаленных хостах.
🔗 Python tricks
Plumbum
— это библиотека, предназначенная для упрощения работы с командной строкой и вызова внешних программ. Она упрощает автоматизацию задач, которые требуют вызова командной строки из\ кода. Это может быть запуск скриптов, утилит, вызов программ для обработки данных и т. д.
Основные возможности библиотеки:
— Удобный синтаксис для запуска команд и программ из Python кода. Позволяет вызывать команды командной строки так же просто, как обычные функции.
— Автоматическое формирование командной строки. Можно передавать аргументы и параметры в виде обычных переменных,
Plumbum
сам сформирует командную строку.— Перенаправление ввода/вывода. Поддержка стандартных операторов Unix для работы с потоками данных.
— Проверка кодов возврата и обработка ошибок.
— Локальное или удаленное выполнение. Возможность запускать команды как локально, так и по SSH на удаленных хостах.
🔗 Python tricks
Логические all и any
Встроенные функции
Эти функции могут использоваться для проверки каких-либо условий на всём наборе данных.
Например, проверить, что все числа больше нуля, или что хотя бы одно число больше 10.
Важные моменты:
— Для пустых
— Элемент считается ложным, если его
— Функции останавливаются при первом ложном (для
🔗 Python tricks
Встроенные функции
all()
и any()
, которые применяются к последовательностям (спискам, кортежам и т. д.) и возвращают bool
значение.all(iterable)
— возвращает True
, если все элементы iterable
истинны (или iterable
пуст).any(iterable)
— возвращает True
, если хотя бы один элемент iterable
истинен.Эти функции могут использоваться для проверки каких-либо условий на всём наборе данных.
Например, проверить, что все числа больше нуля, или что хотя бы одно число больше 10.
Важные моменты:
— Для пустых
iterable all()
вернёт True
, а any()
— False
.— Элемент считается ложным, если его
bool()
равен False
.— Функции останавливаются при первом ложном (для
all
) или истинном (для any
) элементе.🔗 Python tricks
Атрибут __all__
Атрибут
Этот атрибут должен содержать список имен, которые будут экспортированы.
Если
Использование
Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.
Проще говоря,
🔗 Python tricks
Атрибут
__all__
используется для контроля того, какие элементы модуля экспортируются при импорте с помощью from module import *
.Этот атрибут должен содержать список имен, которые будут экспортированы.
Если
__all__
не определен, то при импорте будут экспортированы все имена, не начинающиеся с _
. Использование
__all__
позволяет явно указать автору модуля, какие части модуля являются публичным API, а какие — внутренней реализацией. Это способствует лучшей структуре кода и предотвращает неожиданный экспорт внутренних элементов модуля.
Проще говоря,
__all__
— это простой механизм контроля области видимости при импорте. Он помогает организовать чистый публичный интерфейс модуля.🔗 Python tricks
Argcomplete
Она позволяет легко добавить автодополнение для
Библиотека работает в разных оболочках (bash, zsh и др.) без изменения кода и обладает простой интеграцией — достаточно декорировать функцию
Основные возможности
— Автоматическое дополнение имен файлов и каталогов при вводе путей.
— Предложение вариантов для аргументов на основе возможных значений, описанных через argparse.
— Дополнение для подкоманд в приложениях с вложенной структурой команд.
🔗 Python tricks
Argcomplete
— это библиотека для автодополнения аргументов командной строки. Она позволяет легко добавить автодополнение для
argparse
в интерактивных оболочках (например, bash, zsh). Библиотека работает в разных оболочках (bash, zsh и др.) без изменения кода и обладает простой интеграцией — достаточно декорировать функцию
argparse
декоратором @argcomplete.register
.Основные возможности
argcomplete
:— Автоматическое дополнение имен файлов и каталогов при вводе путей.
— Предложение вариантов для аргументов на основе возможных значений, описанных через argparse.
— Дополнение для подкоманд в приложениях с вложенной структурой команд.
🔗 Python tricks
Библиотека yt-dlp
Основные возможности и применение yt-dlp:
— Поддерживает скачивание видео, аудио, плейлистов, каналов и др с YouTube. Помимо этого работает с сотнями других сайтов — Vimeo, Facebook, ВКонтакте, TikTok и др. Позволяет скачивать контент практически отовсюду.
— Извлечение метаданных и обложек видео.
— Конвертация медиафайлов в другие форматы после скачивания.
— Поддержка прокси и лимитов скорости.
— Множество настроек для извлечения данных, именования файлов, пост-обработки и т.д.
— Удобная утилита командной строки и модуль Python для автоматизации.
🔗 Python tricks
yt-dlp
— это библиотека и утилита командной строки для скачивания видео с YouTube и других сайтов. Основные возможности и применение yt-dlp:
— Поддерживает скачивание видео, аудио, плейлистов, каналов и др с YouTube. Помимо этого работает с сотнями других сайтов — Vimeo, Facebook, ВКонтакте, TikTok и др. Позволяет скачивать контент практически отовсюду.
— Извлечение метаданных и обложек видео.
— Конвертация медиафайлов в другие форматы после скачивания.
— Поддержка прокси и лимитов скорости.
— Множество настроек для извлечения данных, именования файлов, пост-обработки и т.д.
— Удобная утилита командной строки и модуль Python для автоматизации.
🔗 Python tricks
Функции, поддерживающие только именованные аргументы (kwargs)
**kwargs (keyword arguments) — это способ передачи произвольного количества именованных аргументов в функцию.
В функциях после позиционных и обычных именованных аргументов указывают параметр
В
Благодаря этому через
Если одновременно используются
🔗 Python tricks
**kwargs (keyword arguments) — это способ передачи произвольного количества именованных аргументов в функцию.
В функциях после позиционных и обычных именованных аргументов указывают параметр
**kwargs
.В
kwargs
передаются аргументы в виде ключ-значение. Внутри функции kwargs
становится словарем, где ключи — имена аргументов, значения — значения аргументов. Благодаря этому через
kwargs
можно передать любое количество дополнительных аргументов в функцию.Если одновременно используются
*args
и **kwargs
, то в вызове сначала указываются *args
.🔗 Python tricks
list.reverse
Метод reverse() меняет местами элементы списка. Он не возвращает никакого значения. Он обновляет существующий список. Если тебе нужно получить доступ к отдельным элементам списка в обратном порядке, лучше использовать функцию reversed().
🔗 Python tricks
Метод reverse() меняет местами элементы списка. Он не возвращает никакого значения. Он обновляет существующий список. Если тебе нужно получить доступ к отдельным элементам списка в обратном порядке, лучше использовать функцию reversed().
🔗 Python tricks
Библиотека Requests
Эта библиотека упрощает генерацию HTTP-запросов к другим сервисам, помогает писать их очень просто и быстро. Код получается лаконичным, а запрос легко настроить и отправить. Библиотека поддерживает множество функций и написана понятным языком.
🔗 Python tricks
Эта библиотека упрощает генерацию HTTP-запросов к другим сервисам, помогает писать их очень просто и быстро. Код получается лаконичным, а запрос легко настроить и отправить. Библиотека поддерживает множество функций и написана понятным языком.
🔗 Python tricks
Библиотека Retrying
Автоматизирует повторные вызовы. Если действие в коде, например запрос к внешнему источнику, не выполнилось и вернуло ошибку, с помощью Retrying можно настроить автоматические повторные попытки. Количество попыток и возможные изменения в запросах тоже настраиваются.
🔗 Python tricks
Автоматизирует повторные вызовы. Если действие в коде, например запрос к внешнему источнику, не выполнилось и вернуло ошибку, с помощью Retrying можно настроить автоматические повторные попытки. Количество попыток и возможные изменения в запросах тоже настраиваются.
🔗 Python tricks
Set.update
В данном коде продемонстрировано применение метода update() для добавления в множество строки и словаря. Метод разбивает строку на отдельные символы и добавляет их в множество number1. Аналогично он добавляет ключи словаря в множество number2.
🔗 Python tricks
В данном коде продемонстрировано применение метода update() для добавления в множество строки и словаря. Метод разбивает строку на отдельные символы и добавляет их в множество number1. Аналогично он добавляет ключи словаря в множество number2.
🔗 Python tricks
Библиотека Dramatiq
По назначению библиотека похожа на Celery, но считается более новой и работает иначе. Она нужна для распределения задач, которые выполняются фоново. Библиотека лишена ряда недостатков Celery и более удобна в использовании.
🔗 Python tricks
По назначению библиотека похожа на Celery, но считается более новой и работает иначе. Она нужна для распределения задач, которые выполняются фоново. Библиотека лишена ряда недостатков Celery и более удобна в использовании.
🔗 Python tricks
Библиотека Dramatiq
По назначению библиотека похожа на Celery, но считается более новой и работает иначе. Она нужна для распределения задач, которые выполняются фоново. Библиотека лишена ряда недостатков Celery и более удобна в использовании.
🔗 Python tricks
По назначению библиотека похожа на Celery, но считается более новой и работает иначе. Она нужна для распределения задач, которые выполняются фоново. Библиотека лишена ряда недостатков Celery и более удобна в использовании.
🔗 Python tricks
Библиотека Celery
Помогает правильно распределить множество задач в больших проектах, расставить приоритеты и выполнить их в оптимальной последовательности. Часто используется в backend-разработке, например с фреймворком Django.
🔗 Python tricks
Помогает правильно распределить множество задач в больших проектах, расставить приоритеты и выполнить их в оптимальной последовательности. Часто используется в backend-разработке, например с фреймворком Django.
🔗 Python tricks
Query JSON
JMESpath – это язык запросов для JSON, который позволяет получать необходимые данные из документа или словаря JSON. Библиотека доступна как для Python, так и для других ЯП, что расширяет ее возможности.
🔗 Python tricks
JMESpath – это язык запросов для JSON, который позволяет получать необходимые данные из документа или словаря JSON. Библиотека доступна как для Python, так и для других ЯП, что расширяет ее возможности.
🔗 Python tricks
Атрибут __slots__
Этот атрибут позволяет ограничить создание новых атрибутов в экземплярах класса.
Использование
Атрибут полезен, когда заранее известны все атрибуты класса и не нужна динамическая задача новых. Например, для простых данных или immutable классов.
🔗 Python tricks
Этот атрибут позволяет ограничить создание новых атрибутов в экземплярах класса.
__slots__
определяется как список имен атрибутов в определении класса. Экземпляры класса с __slots__
могут иметь атрибуты только с именами, определенными в __slots__
. Попытка создать новый атрибут приведет к ошибке.Использование
__slots__
экономит память, так как экземпляры не создают словарь __dict__
для атрибутов.__slots__
не наследуются, для каждого подкласса нужно определять свои слоты.Атрибут полезен, когда заранее известны все атрибуты класса и не нужна динамическая задача новых. Например, для простых данных или immutable классов.
🔗 Python tricks
collections.MutableMapping
Collections.MutableMapping — это интерфейс, который представляет изменяемое отображение (словарь).
Он наследуется от интерфейса
Основное преимущество в использовании
Например, во многих функциях в стандартной библиотеке есть параметры типа
🔗 Python tricks
Collections.MutableMapping — это интерфейс, который представляет изменяемое отображение (словарь).
Он наследуется от интерфейса
Mapping
и добавляет методы для изменения отображения, такие как __setitem__
, __delitem__
и clear
. Основное преимущество в использовании
MutableMapping
— это возможность передавать экземпляры такого класса в любое API, ожидающее словарь. Например, во многих функциях в стандартной библиотеке есть параметры типа
dict
. Если создать класс, реализующий MutableMapping
, его экземпляры можно будет передавать в такие функции.🔗 Python tricks
string.rstrip
rstrip() возвращает копию строки с удаленными конечными символами. Все комбинации символов в аргументе chars удаляются справа от строки до первого несоответствия. Если аргумент chars не указан, все конечные пробелы удаляются из строки.
🔗 Python tricks
rstrip() возвращает копию строки с удаленными конечными символами. Все комбинации символов в аргументе chars удаляются справа от строки до первого несоответствия. Если аргумент chars не указан, все конечные пробелы удаляются из строки.
🔗 Python tricks
Flask
Микрофреймворк для создания простейших веб-приложений на Python. Flask помогает быстро создать простой проект и в дальнейшем масштабировать его. Он может интегрироваться с другими инструментами, например для дизайна и визуализации интерфейса.
🔗 Python tricks
Микрофреймворк для создания простейших веб-приложений на Python. Flask помогает быстро создать простой проект и в дальнейшем масштабировать его. Он может интегрироваться с другими инструментами, например для дизайна и визуализации интерфейса.
🔗 Python tricks
SciPy
Основана на NumPy, но имеет более широкий функционал. Она предназначена для глубоких и сложных математических операций и вычислений. В SciPy много функций для научного анализа и работы с высшей математикой.
🔗 Python tricks
Основана на NumPy, но имеет более широкий функционал. Она предназначена для глубоких и сложных математических операций и вычислений. В SciPy много функций для научного анализа и работы с высшей математикой.
🔗 Python tricks
TensorFlow
Мощная библиотека для глубокого обучения. В основном TensorFlow используется для создания и обучения нейронных сетей. Ее можно представить как «ядро» для математических вычислений на Python. Она представляет данные как тензоры — векторы, которые складываются в графы.
🔗 Python tricks
Мощная библиотека для глубокого обучения. В основном TensorFlow используется для создания и обучения нейронных сетей. Ее можно представить как «ядро» для математических вычислений на Python. Она представляет данные как тензоры — векторы, которые складываются в графы.
🔗 Python tricks
Matplotlib
Используется для удобного построения графиков и визуализации результатов. Активно применяется в задачах анализа данных, при оценке и сравнении метрик алгоритмов, наблюдениях за моделью. Нередко Matplotlib используется в тандеме с NumPy и SciPy.
🔗 Python tricks
Используется для удобного построения графиков и визуализации результатов. Активно применяется в задачах анализа данных, при оценке и сравнении метрик алгоритмов, наблюдениях за моделью. Нередко Matplotlib используется в тандеме с NumPy и SciPy.
🔗 Python tricks