Python tricks | Хитрости Питона
الذهاب إلى القناة على Telegram
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты. Сотрудничество: @SIeep_Token Мы на платформе: https://telegram.me/python_tricks Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
إظهار المزيد6 053
المشتركون
لا توجد بيانات24 ساعات
-117 أيام
-5930 أيام
أرشيف المشاركات
Get Method для словаря
Большинство разработчиков используют скобки, чтобы получить значение из словаря. Но сейчас рекомендуется использовать
Get method.
При использовании метода скобок выдается ошибка, если ключ отсутствует. С помощью Get method вы получите “None” .
🔗 Python tricksset.issubset
Метод issubset() возвращает True, если множество A является подмножеством B, т. е. если все элементы множества A присутствуют в сете B. В противном случае он возвращает False.
🔗 Python tricks
NetworkX
NetworkX — это библиотека Python для анализа сложных сетей. Она предоставляет структуры данных для работы с графами (сетями) и реализует множество алгоритмов для анализа и визуализации сетевых данных.
Она может использоваться в различных областях, таких как социальные, биологические, транспортные, компьютерные сети и многих других.
🔗 Python tricks
Обратный список и строка
Скорее всего, вы используете обратную функцию для инверсионной записи списков или строк. Но знаете ли вы, как осуществить инверсию более эффективным способом?
🔗 Python tricks
Транспонирование 2d-массива
Этот лайфхак покажет, как выполнить транспонирование 2d-массива с помощью метода
zip.
🔗 Python tricksРасчет времени выполнения
Этот простейший “трюк” поможет рассчитать время, необходимое для выполнения программы. Используя time-модуль, вы можете точно узнать, сколько времени требуется программе для выполнения кода
🔗 Python tricks
string.rsplit
rsplit() разбивает строку по разделителю, начиная справа, и возвращает список строк. При необходимости ты можешь задать количество разбиения строки. По умолчанию этот параметр равен -1. Это значит, что нет ограничения на разбиение.
🔗 Python tricks
Функция cv2.blur()
Вы можете размыть изображение в Python с помощью функции OpenCV cv2.blur().
Выше приводится простой пример, в котором нужно размыть изображение и сохранить его.
Ознакомиться подробнее можно здесь.
🔗 Python tricks
Распечатывание ежемесячного календаря
А этот лайфхак — всего лишь скрытая функция Python, которая позволяет распечатывать ежемесячный календарь в формате таблицы.
🔗 Python tricks
Функция sample
Функция sample() позволяет выбрать случайным образом элементы из последовательности или коллекции.
Это удобно при необходимости получить случайную выборку из данных.
Функция принимает два основных аргумента:
population — последовательность, из которой надо выбрать элементы (list, tuple, string и т. д.)
k — количество элементов для выборки.
Дополнительные аргументы:
counts — список весов элементов (по умолчанию равновероятный выбор).
rng — генератор случайных чисел (по умолчанию берется из модуля random).
В примере из списка букв берется случайная выборка размером 3 элемента. Результат при каждом запуске будет разный.
🔗 Python tricksМетод str.expandtabs()
Метод str.expandtabs() используется для замены символов табуляции (\t) в строке на заданное количество пробелов.
Он позволяет контролировать ширину табуляции при выводе строки.
🔗 Python tricks
Атрибут __context__
Атрибут context используется в менеджерах контекста (context managers) и представляет контекст, в котором находится блок кода.
Он позволяет передавать произвольные данные между блоком
with и методами enter/exit менеджера контекста.
В примере при входе в блок with создается объект MyContext и его атрибут value передается в переменную context с помощью метода enter.
При выходе из блока метод exit имеет доступ к атрибуту value через self.context и используется для "чистых" операций.
🔗 Python tricksМетод __subclasshook__
Метод subclasshook используется для определения, является ли один класс подклассом другого. Он вызывается при проверке
isinstance() и issubclass() для определения отношения наследования между классами.
Этот метод позволяет настроить поведение этих функций для пользовательских классов.
В примере метод subclasshook класса B проверяет, есть ли у подкласса метод print_value. Если да, то возвращает True, что позволяет считать его подклассом B.
🔗 Python tricksМетод math.perm()
Метод math.perm() вычисляет перестановки — число способов расположения n элементов по m. Он находится в модуле
math.
Метод принимает два обязательных аргумента: n — общее количество элементов и m — количество элементов в подмножестве. Возвращает целое число — количество перестановок.
Если n < m, вернет 0.
В примере вычисляются перестановки из 5 элементов по 3.
То есть сколько способов выбрать подмножество из 3 элементов из множества размером 5.
🔗 Python tricksФункция isalnum
Функция isalnum() используется для проверки, состоит ли строка из буквенно-цифровых символов.
Функция принимает в качестве аргумента строку и возвращает
True, если строка состоит только из буквенных символов (a-z, A-Z) и цифр (0-9), или False, если в строке есть другие символы, пробелы, знаки пунктуации и т. д.
*Регистр символов не имеет значения.
*Пустая строка возвращает False.
🔗 Python tricksВозврат нескольких значений из функции
Знаете ли вы, что можно осуществлять возврат нескольких значений из функции? Вот как это сделать.
🔗 Python tricks
Применение функции ко всем элементам в списке
Этот прием полезен в тех случаях, когда нужно применить функцию ко всем элементам списка, а не к каждому отдельно.
🔗 Python tricks
urllib3
urllib3 — это библиотека для отправки HTTP-запросов, она позволяет легко и удобно делать запросы к веб-сервисам и API.
Основные возможности
urllib3:
— Поддержка HTTP и HTTPS протоколов.
— Кэширование соединений для повышения производительности.
— Автоматическое развертывание соединения по SSL.
— Поддержка куки, прокси, редиректов.
— Встроенная поддержка gzip и deflate.
— Пулинг соединений и многопоточность.
В примере создается экземпляр PoolManager из urllib3, который управляет пулом соединений.
Делается GET запрос к httpbin.org/ip, который возвращает IP адрес клиента.
Ответ записывается в переменную r, из которой берется тело ответа r.data и выводится на печать.
🔗 Python tricksФункция в одну строку
Этот метод с использованием лямбды позволит создавать лаконичные функции в одну строку. Взгляните на пример кода ниже.
🔗 Python tricks
Преобразование изменяемых данных в неизменяемые
Изменяемые данные (например, словари или списки) — это структуры, к которым могут быть добавлены новые значения.
Неизменяемые данные, в противоположность изменяемым, после создания остаются неизменными. Посмотрите, как можно преобразовать изменяемый тип данных в неизменяемый.
🔗 Python tricks
