Библиотека Typer
Она позволяет легко создавать CLI приложения с поддержкой аргументов, опций, субкоманд и автоматической генерацией
Основные возможности
— Декоратор
— Автоматический парсинг аргументов и опций.
— Валидация и tipped annotations для аргументов и опций.
— Автоматическая генерация
— Встроенная поддержка
Typer часто используется для создания утилит командной строки, CLI интерфейсов для python приложений, API клиентов, DevOps инструментов и других задач, где нужен простой и удобный интерфейс командной строки.
🔗 Python tricks
Typer
— это библиотека для создания командных интерфейсов приложений на Python. Она позволяет легко создавать CLI приложения с поддержкой аргументов, опций, субкоманд и автоматической генерацией
help
. Основные возможности
Typer
:— Декоратор
@typer.command()
для определения команд и подкоманд.— Автоматический парсинг аргументов и опций.
— Валидация и tipped annotations для аргументов и опций.
— Автоматическая генерация
help
с описаниями.— Встроенная поддержка
Click
для обратной совместимости.Typer часто используется для создания утилит командной строки, CLI интерфейсов для python приложений, API клиентов, DevOps инструментов и других задач, где нужен простой и удобный интерфейс командной строки.
🔗 Python tricks
Функция sorted
Она возвращает новый отсортированный список или итератор, не изменяя исходную последовательность.
По умолчанию сортировка выполняется в возрастающем порядке. Для сортировки в убывающем порядке нужно указать аргумент
Для сортировки по определенному ключу можно использовать ключевой аргумент
Для сортировки объектов можно использовать атрибуты объекта в качестве ключа сортировки.
Сортировка происходит на месте для списков, и создаётся новый отсортированный список для кортежей и других неизменяемых последовательностей.
🔗 Python tricks
sorted()
используется для сортировки элементов в списке, кортеже или другой последовательности. Она возвращает новый отсортированный список или итератор, не изменяя исходную последовательность.
По умолчанию сортировка выполняется в возрастающем порядке. Для сортировки в убывающем порядке нужно указать аргумент
reverse=True
. Для сортировки по определенному ключу можно использовать ключевой аргумент
key
. Он принимает функцию, которая извлекает ключ для сортировки из каждого элемента.Для сортировки объектов можно использовать атрибуты объекта в качестве ключа сортировки.
Сортировка происходит на месте для списков, и создаётся новый отсортированный список для кортежей и других неизменяемых последовательностей.
🔗 Python tricks
Pyspark
Основные возможности
—
— В
— Поддержка чтения и записи в разные хранилища данных и форматы файлов.
— Встроенные алгоритмы машинного обучения для классификации, кластеризации, регрессии.
— Интуитивно понятный API, позволяющий применять
Таким образом,
🔗 Python tricks
Pyspark
— это библиотека для работы с Apache Spark
на языке Python. Она позволяет выполнять распределенные вычисления на кластерах и обрабатывать большие объемы данных. Основные возможности
Pyspark
:—
Pyspark
автоматически распределяет данные и вычисления между узлами кластера для максимальной производительности.— В
Pyspark
есть специальные типы данных (RDD, DataFrame, Dataset), которые позволяют удобно работать с табличными и структурированными данными.— Поддержка чтения и записи в разные хранилища данных и форматы файлов.
— Встроенные алгоритмы машинного обучения для классификации, кластеризации, регрессии.
— Интуитивно понятный API, позволяющий применять
Pyspark
вместе с другими популярными библиотеками Python для анализа данных.Таким образом,
Pyspark
используется для быстрой параллельной обработки больших объемов данных с помощью кластеров, что делает его очень полезным инструментом для big data и машинного обучения.🔗 Python tricks
Использование функции any() для проверки наличия элементов, удовлетворяющих условию
Функция any() позволяет быстро проверить, есть ли хотя бы один элемент в последовательности, который удовлетворяет заданному условию. Это удобно, когда нужно проверить наличие элемента без необходимости писать цикл.
Функция any() — это удобный инструмент для краткой и эффективной проверки условий в коллекциях, упрощая код и улучшая читаемость.
🔗 Python tricks
Функция any() позволяет быстро проверить, есть ли хотя бы один элемент в последовательности, который удовлетворяет заданному условию. Это удобно, когда нужно проверить наличие элемента без необходимости писать цикл.
Функция any() — это удобный инструмент для краткой и эффективной проверки условий в коллекциях, упрощая код и улучшая читаемость.
🔗 Python tricks
Использование defaultdict для работы со словарями с автоматическим созданием значений
defaultdict из модуля collections позволяет автоматически создавать значения для новых ключей в словаре. Это избавляет от необходимости проверки наличия ключа перед его использованием.
Использование defaultdict значительно упрощает работу с ключами и значениями в словарях, избавляя от ручного управления отсутствующими ключами.
🔗 Python tricks
defaultdict из модуля collections позволяет автоматически создавать значения для новых ключей в словаре. Это избавляет от необходимости проверки наличия ключа перед его использованием.
Использование defaultdict значительно упрощает работу с ключами и значениями в словарях, избавляя от ручного управления отсутствующими ключами.
🔗 Python tricks
Использование zip() для параллельной обработки нескольких списков
Функция zip() в Python позволяет объединять несколько списков (или других итерируемых объектов) в один, создавая кортежи из элементов с одинаковыми индексами. Это удобно, когда нужно обрабатывать несколько последовательностей одновременно.
Использование zip() делает работу с несколькими последовательностями более лаконичной и эффективной, позволяя легко создавать структуры данных и упрощать код.
🔗 Python tricks
Функция zip() в Python позволяет объединять несколько списков (или других итерируемых объектов) в один, создавая кортежи из элементов с одинаковыми индексами. Это удобно, когда нужно обрабатывать несколько последовательностей одновременно.
Использование zip() делает работу с несколькими последовательностями более лаконичной и эффективной, позволяя легко создавать структуры данных и упрощать код.
🔗 Python tricks
Использование f-строк для форматирования строк
С помощью f-строк (форматированных строковых литералов), доступных в Python 3.6 и выше, вы можете легко и читабельно вставлять значения переменных в строки. Это значительно упрощает создание сложных строк и повышает читаемость кода.
Использование f-строк позволяет значительно упростить процесс форматирования строк, делая код более чистым и понятным.
🔗 Python tricks
С помощью f-строк (форматированных строковых литералов), доступных в Python 3.6 и выше, вы можете легко и читабельно вставлять значения переменных в строки. Это значительно упрощает создание сложных строк и повышает читаемость кода.
Использование f-строк позволяет значительно упростить процесс форматирования строк, делая код более чистым и понятным.
🔗 Python tricks
Использование itertools.product для генерации декартова произведения
Модуль itertools предоставляет полезные функции для работы с итераторами. Функция itertools.product() позволяет генерировать декартово произведение нескольких последовательностей, что может быть полезно, например, при создании всех возможных комбинаций элементов из нескольких списков.
Использование itertools.product упрощает задачу генерации всех возможных комбинаций, делая код более чистым и эффективным.
🔗 Python tricks
Модуль itertools предоставляет полезные функции для работы с итераторами. Функция itertools.product() позволяет генерировать декартово произведение нескольких последовательностей, что может быть полезно, например, при создании всех возможных комбинаций элементов из нескольких списков.
Использование itertools.product упрощает задачу генерации всех возможных комбинаций, делая код более чистым и эффективным.
🔗 Python tricks
Использование defaultdict из модуля collections для удобного подсчета элементов
Если вам нужно подсчитать количество вхождений элементов в списке или другой итерируемой структуре, использование defaultdict из модуля collections может значительно упростить задачу. Вместо того чтобы проверять, существует ли ключ в словаре, defaultdict автоматически создаст значение по умолчанию для отсутствующих ключей.
Использование defaultdict позволяет быстро и удобно подсчитывать вхождения элементов, избавляя от лишних проверок и делая код более лаконичным.
🔗 Python tricks
Если вам нужно подсчитать количество вхождений элементов в списке или другой итерируемой структуре, использование defaultdict из модуля collections может значительно упростить задачу. Вместо того чтобы проверять, существует ли ключ в словаре, defaultdict автоматически создаст значение по умолчанию для отсутствующих ключей.
Использование defaultdict позволяет быстро и удобно подсчитывать вхождения элементов, избавляя от лишних проверок и делая код более лаконичным.
🔗 Python tricks
Использование with для работы с файлами
Использование конструкции with при работе с файлами в Python позволяет автоматически управлять ресурсами, такими как открытие и закрытие файлов. Это помогает избежать утечек памяти и ошибок, связанных с тем, что файл не был закрыт после использования.
Использование конструкции with упрощает работу с файлами, делает код более надежным и чистым, освобождая вас от необходимости вручную закрывать файлы.
🔗 Python tricks
Использование конструкции with при работе с файлами в Python позволяет автоматически управлять ресурсами, такими как открытие и закрытие файлов. Это помогает избежать утечек памяти и ошибок, связанных с тем, что файл не был закрыт после использования.
Использование конструкции with упрощает работу с файлами, делает код более надежным и чистым, освобождая вас от необходимости вручную закрывать файлы.
🔗 Python tricks
Использование f-строк для форматирования строк
В Python есть удобный способ форматирования строк, называемый f-строками (f-strings). Это позволяет вставлять значения переменных непосредственно в строку, делая код более читаемым и лаконичным.
Использование f-строк позволяет значительно упростить процесс форматирования строк и сделать ваш код более чистым и понятным.
🔗 Python tricks
В Python есть удобный способ форматирования строк, называемый f-строками (f-strings). Это позволяет вставлять значения переменных непосредственно в строку, делая код более читаемым и лаконичным.
Использование f-строк позволяет значительно упростить процесс форматирования строк и сделать ваш код более чистым и понятным.
🔗 Python tricks
Использование функции any() и all() для проверки условий
Функции any() и all() в Python позволяют легко проверять условия для элементов в коллекциях, таких как списки или кортежи. Это делает код более читаемым и компактным.
Использование any() и all() значительно упрощает проверку условий и делает код более читаемым и эффективным.
🔗 Python tricks
Функции any() и all() в Python позволяют легко проверять условия для элементов в коллекциях, таких как списки или кортежи. Это делает код более читаемым и компактным.
Использование any() и all() значительно упрощает проверку условий и делает код более читаемым и эффективным.
🔗 Python tricks
Использование collections.defaultdict для упрощения работы со словарями
Модуль collections в Python предоставляет специальный тип словаря, называемый defaultdict. Он позволяет автоматически создавать значения для новых ключей, что значительно упрощает работу с словарями, особенно когда нужно подсчитать количество элементов или сгруппировать данные.
Использование defaultdict позволяет значительно упростить работу с данными и сделать код более эффективным и читаемым.
🔗 Python tricks
Модуль collections в Python предоставляет специальный тип словаря, называемый defaultdict. Он позволяет автоматически создавать значения для новых ключей, что значительно упрощает работу с словарями, особенно когда нужно подсчитать количество элементов или сгруппировать данные.
Использование defaultdict позволяет значительно упростить работу с данными и сделать код более эффективным и читаемым.
🔗 Python tricks
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
Использование with для работы с файлами
Когда вы работаете с файлами в Python, важно не забыть закрыть файл после завершения работы с ним. Использование конструкции with позволяет автоматически управлять ресурсами, такими как файлы, и гарантирует, что они будут закрыты, даже если произойдет ошибка.
Использование конструкции with делает код более чистым и безопасным, снижая вероятность ошибок и утечек ресурсов.
🔗 Python tricks
Когда вы работаете с файлами в Python, важно не забыть закрыть файл после завершения работы с ним. Использование конструкции with позволяет автоматически управлять ресурсами, такими как файлы, и гарантирует, что они будут закрыты, даже если произойдет ошибка.
Использование конструкции with делает код более чистым и безопасным, снижая вероятность ошибок и утечек ресурсов.
🔗 Python tricks
Использование f-строк для форматирования строк
f-строки, доступные в Python 3.6 и выше, позволяют легко и удобно форматировать строки, внедряя в них значения переменных. Это делает код более читаемым и уменьшает количество ошибок при форматировании.
Использование f-строк значительно улучшает процесс работы со строками в Python и делает код более чистым и понятным.
🔗 Python tricks
f-строки, доступные в Python 3.6 и выше, позволяют легко и удобно форматировать строки, внедряя в них значения переменных. Это делает код более читаемым и уменьшает количество ошибок при форматировании.
Использование f-строк значительно улучшает процесс работы со строками в Python и делает код более чистым и понятным.
🔗 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