Распаковка массива
Распаковка массива (iterable unpacking) — это удобный синтаксис для присваивания элементов
Основные моменты, которые нужно знать:
— Распаковка производится с помощью звездочки
— Количество переменных должно соответствовать количеству элементов в
— Можно использовать распаковку для пропуска элементов.
— Для сбора оставшихся элементов в список используется конструкция
— Распаковка работает с вложенными списками.
— Формат распаковки можно использовать и при передаче аргументов в функции.
🔗 Python tricks
Распаковка массива (iterable unpacking) — это удобный синтаксис для присваивания элементов
iterable
объектов (списков, кортежей и т. д.) отдельным переменным.Основные моменты, которые нужно знать:
— Распаковка производится с помощью звездочки
*
.— Количество переменных должно соответствовать количеству элементов в
iterable
объекте, иначе возникнет ошибка.— Можно использовать распаковку для пропуска элементов.
— Для сбора оставшихся элементов в список используется конструкция
*others
.— Распаковка работает с вложенными списками.
— Формат распаковки можно использовать и при передаче аргументов в функции.
🔗 Python tricks
sets.isuperset()
Функция
Она принимает в качестве аргумента другой
Это полезно при работе с множествами для проверки включения, или при проверке покрытия тестами.
Также это используется для проверки включения при работе с данными, чтобы убедиться, что один набор данных полностью покрывает другой по каким-либо критериям.
🔗 Python tricks
Функция
sets.isuperset()
позволяет проверить, является ли один set
подмножеством другого. Она принимает в качестве аргумента другой
set
и возвращает boolean значение — True
если первый set
содержит все элементы второго, и False
в противном случае. Это полезно при работе с множествами для проверки включения, или при проверке покрытия тестами.
Также это используется для проверки включения при работе с данными, чтобы убедиться, что один набор данных полностью покрывает другой по каким-либо критериям.
🔗 Python tricks
collections.Mapping
Он наследуется встроенными типами словарей, такими как
Класс
Это позволяет писать универсальный код, который будет работать с любым типом, реализующим этот интерфейс.
Например,
🔗 Python tricks
collections.Mapping
— это абстрактный базовый класс, который представляет отображение ключ-значение. Он наследуется встроенными типами словарей, такими как
dict
, а также другими типами, которые реализуют схожее поведение, например OrderedDict
.Класс
Mapping
определяет интерфейс, общий для всех отображений ключ-значение, включая такие методы как keys()
, values()
, items()
и другие. Это позволяет писать универсальный код, который будет работать с любым типом, реализующим этот интерфейс.
Например,
Mapping
часто используется вместе с isinstance
или issubclass
для проверки, является ли объект словарем. Также он полезен при написании функций, которым нужно принимать на вход отображения, но без привязки к конкретному типу как dict
. Mapping
гарантирует наличие основных методов словаря у переданного объекта.🔗 Python tricks
Set.update
В данном коде продемонстрировано применение метода update() для добавления в множество строки и словаря. Метод разбивает строку на отдельные символы и добавляет их в множество number1. Аналогично он добавляет ключи словаря в множество number2.
🔗 Python tricks
В данном коде продемонстрировано применение метода update() для добавления в множество строки и словаря. Метод разбивает строку на отдельные символы и добавляет их в множество number1. Аналогично он добавляет ключи словаря в множество number2.
🔗 Python tricks
Сглаживание списка
Когда вам дан многоуровневый список или массив, который не является одномерным, вы можете захотеть сгладить его до простого списка.
🔗 Python tricks
Когда вам дан многоуровневый список или массив, который не является одномерным, вы можете захотеть сгладить его до простого списка.
🔗 Python tricks
Использование функции sorted()
В Python очень легко сортировать некие последовательности данных с использованием встроенной функции
🔗 Python tricks
В Python очень легко сортировать некие последовательности данных с использованием встроенной функции
sorted()
, которая берёт на себя решение всех сопутствующих задач. Эта функция сортирует любые последовательности (списки, кортежи) и всегда возвращает список с отсортированными элементами.🔗 Python tricks
Использование коллекций Python
Коллекции Python — это контейнерные типы данных. В частности, это списки, множества, кортежи, словари. Модуль
🔗 Python tricks
Коллекции Python — это контейнерные типы данных. В частности, это списки, множества, кортежи, словари. Модуль
collections
даёт в распоряжение разработчика высокопроизводительные типы данных, которые помогают улучшить код, сделать его чище и облегчить работу с ним. Этот модуль содержит множество полезных методов.🔗 Python tricks
Использование модуля itertools
Python-модуль
🔗 Python tricks
Python-модуль
itertools
представляет собой набор инструментов для работы с итераторами. В состав этого модуля входит множество средств для генерирования различных последовательностей.🔗 Python tricks
bool
Метод bool() принимает указанный аргумент и возвращает его логическое значение. Метод bool() возвращает False, если аргумент пуст, имеет значение False, 0 или None. True - если аргументом является любое число (кроме 0), True или строка.
🔗 Python tricks
Метод bool() принимает указанный аргумент и возвращает его логическое значение. Метод bool() возвращает False, если аргумент пуст, имеет значение False, 0 или None. True - если аргументом является любое число (кроме 0), True или строка.
🔗 Python tricks
Использование функции zip() при работе со списками
Предположим, что вам нужно скомбинировать несколько списков одинаковой длины и вывести результирующий список. Как и в других случаях, подобную задачу можно решить, так сказать, «в лоб», а можно воспользоваться чем-то вроде универсальной функции
Предположим, что вам нужно скомбинировать несколько списков одинаковой длины и вывести результирующий список. Как и в других случаях, подобную задачу можно решить, так сказать, «в лоб», а можно воспользоваться чем-то вроде универсальной функции
zip().
🔗 Python tricksИтерирование списков с помощью enumerate()
Метод
🔗 Python tricks
Метод
enumerate()
добавляет к итерируемой коллекции нумерацию и возвращает объект, генерирующий пары элементов, состоящие из индекса элемента и самого этого элемента.🔗 Python tricks
Находим подстроку
Ключевое слово
Возвращает логическое значение
Что нужно знать про поиск подстроки в строке:
— Поиск чувствителен к регистру символов, т. е. различает заглавные и строчные буквы.
— Подстрока может состоять из одного символа.
— Поиск осуществляется слева направо по всей строке.
— Как только вхождение подстроки найдено — поиск прекращается.
— Можно искать все вхождения подстроки, обернув проверку в цикл.
🔗 Python tricks
Ключевое слово
in
используется для проверки, содержится ли элемент в последовательности (список, кортеж, строка) или словаре.Возвращает логическое значение
True
если элемент находится в последовательности/словаре, False
если нет.Что нужно знать про поиск подстроки в строке:
— Поиск чувствителен к регистру символов, т. е. различает заглавные и строчные буквы.
— Подстрока может состоять из одного символа.
— Поиск осуществляется слева направо по всей строке.
— Как только вхождение подстроки найдено — поиск прекращается.
— Можно искать все вхождения подстроки, обернув проверку в цикл.
🔗 Python tricks
Метод get у словарей
Метод используется для получения значения по ключу. Синтаксис:
Можно задать customized значение, если ключ отсутствует:
🔗 Python tricks
Метод используется для получения значения по ключу. Синтаксис:
dict.get(key)
Если ключ есть в словаре, возвращается соответствующее значение, если ключа нет, вместо ошибки возвращается значение None
.Можно задать customized значение, если ключ отсутствует:
dict.get(key, customized_value)
Метод полезен, когда нет уверенности, что ключ присутствует в словаре, так как позволяет избежать ошибки при обращении к несуществующим ключам.🔗 Python tricks
Использование генераторов списков
Генераторы списков используются для создания новых списков из других итерируемых объектов. Так как генератор возвращает списки, его описание представляет собой выражение, включённое в квадратные скобки, выполняемое для каждого элемента списка.
Сюда же входит и описание цикла
🔗 Python tricks
Генераторы списков используются для создания новых списков из других итерируемых объектов. Так как генератор возвращает списки, его описание представляет собой выражение, включённое в квадратные скобки, выполняемое для каждого элемента списка.
Сюда же входит и описание цикла
for
, выполняющего проход по каждому элементу. Генераторы списков позволяют ускорить работу со списками за счёт того, что интерпретатор Python оптимизирован в расчёте на шаблоны, повторяющиеся при обходе списка.🔗 Python tricks
Преобразование двух списков в словарь
Предположим, у нас имеется два списка. Один из них содержит имена студентов, а второй — их оценки. Как преобразовать эти два списка в словарь? Если прибегнуть для этого к функции
🔗 Python tricks
Предположим, у нас имеется два списка. Один из них содержит имена студентов, а второй — их оценки. Как преобразовать эти два списка в словарь? Если прибегнуть для этого к функции
zip()
, то данная задача может быть решена так.🔗 Python tricks
Библиотека 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
Click
Основные преимущества
Возможности:
— Определение команд и групп команд с помощью декоратора
— Декларативное описание аргументов и опций.
— Автоматический парсинг аргументов командной строки.
— Генерация
— Поддержка
— Вложенные команды и группы подкоманд.
— Цветной вывод в терминал.
🔗 Python tricks
Click
— популярная библиотека для создания интерфейса командной строки (CLI) в приложениях Python. Основные преимущества
Click
— простота использования, элегантный и понятный код, мощные возможности по созданию комплексных CLI. Работает на Python 3.6 и выше.Возможности:
— Определение команд и групп команд с помощью декоратора
@click.command()
.— Декларативное описание аргументов и опций.
— Автоматический парсинг аргументов командной строки.
— Генерация
help
сообщения.— Поддержка
bash
/zsh
автодополнения.— Вложенные команды и группы подкоманд.
— Цветной вывод в терминал.
Click
широко используется для создания консольных утилит, CLI интерфейсов для web фреймворков, DevOps инструментов, скриптов автоматизации и других задач, где требуется командная строка.🔗 Python tricks
Функция sorted
Она возвращает новый отсортированный список или итератор, не изменяя исходную последовательность.
По умолчанию сортировка выполняется в возрастающем порядке. Для сортировки в убывающем порядке нужно указать аргумент
Для сортировки по определенному ключу можно использовать ключевой аргумент
Для сортировки объектов можно использовать атрибуты объекта в качестве ключа сортировки.
Сортировка происходит на месте для списков, и создаётся новый отсортированный список для кортежей и других неизменяемых последовательностей.
🔗 Python tricks
sorted()
используется для сортировки элементов в списке, кортеже или другой последовательности. Она возвращает новый отсортированный список или итератор, не изменяя исходную последовательность.
По умолчанию сортировка выполняется в возрастающем порядке. Для сортировки в убывающем порядке нужно указать аргумент
reverse=True
. Для сортировки по определенному ключу можно использовать ключевой аргумент
key
. Он принимает функцию, которая извлекает ключ для сортировки из каждого элемента.Для сортировки объектов можно использовать атрибуты объекта в качестве ключа сортировки.
Сортировка происходит на месте для списков, и создаётся новый отсортированный список для кортежей и других неизменяемых последовательностей.
🔗 Python tricks
bashplotlib
bashplotlib - это инструмент для построения графиков прямо в терминале с помощью Python. Он позволяет создавать простые графики прямо из командной строки.
Чтобы удобнее было работать с bashplotlib, можно создать функцию-обёртку для упрощения построения графиков. Это позволит строить разные типы графиков в терминале с помощью bashplotlib, и легко настраиваться для новых типов графиков или изменений
🔗 Python tricks
bashplotlib - это инструмент для построения графиков прямо в терминале с помощью Python. Он позволяет создавать простые графики прямо из командной строки.
Чтобы удобнее было работать с bashplotlib, можно создать функцию-обёртку для упрощения построения графиков. Это позволит строить разные типы графиков в терминале с помощью bashplotlib, и легко настраиваться для новых типов графиков или изменений
🔗 Python tricks
Библиотека HTTPX
Расширение для Requests. Оно поддерживает все функции библиотеки, помогает работать с HTTP и асинхронностью. HTTPX помогает отправлять и получать запросы, работать с клиент-серверными протоколами взаимодействия веб-сервера и приложения.
🔗 Python tricks
Расширение для Requests. Оно поддерживает все функции библиотеки, помогает работать с HTTP и асинхронностью. HTTPX помогает отправлять и получать запросы, работать с клиент-серверными протоколами взаимодействия веб-сервера и приложения.
🔗 Python tricks
Функция zip()
Функция
Итератор возвращает кортежи, содержащие i-й элемент из каждой из последовательностей. Количество элементов в итоговом итераторе равно длине самой короткой последовательности.
Результатом
🔗 Python tricks
Функция
zip()
принимает в качестве аргументов последовательности (списки, кортежи и т.д.) и возвращает итератор с кортежами из элементов этих последовательностей. Итератор возвращает кортежи, содержащие i-й элемент из каждой из последовательностей. Количество элементов в итоговом итераторе равно длине самой короткой последовательности.
zip
можно использовать для "сшивания" вместе данных из нескольких списков. Например, имена и фамилии из двух списков можно комбинировать в один список имя-фамилия.Результатом
zip
является итератор, который можно превратить в список или кортеж. Также на результат можно применять различные операции, такие как цикл for
.zip
используется вместе с распаковкой кортежей, чтобы присвоить элементы нескольких итераторов переменным в цикле.🔗 Python tricks