Объединение словарей
При необходимости объединить несколько словарей в один, в последних версиях языка есть возможность сделать это намного чище
При необходимости объединить несколько словарей в один, в последних версиях языка есть возможность сделать это намного чище
Меняем местами ключи и значения в словаре
Бывают ситуации, когда необходимо поменять местами ключи со значениями в
Бывают ситуации, когда необходимо поменять местами ключи со значениями в
python
словаре. Сделать это можно следующим способом:Удобное хранение значений
Модуль
Для создания перечисления необходимо создать класc, являющийся наследником класса
Атрибуты класса конвертируются в экземпляры при парсинге. Каждый экземпляр имеет параметр
Модуль
enum
содержит в себе тип для перечисления значений с возможностью итерирования и сравнения. Его можно использовать для создания понятных обозначений вместо использования чисел или строк.Для создания перечисления необходимо создать класc, являющийся наследником класса
enum.Enum
. Атрибуты класса конвертируются в экземпляры при парсинге. Каждый экземпляр имеет параметр
name
, в котором хранится название, а также value
, в котором хранится установленное значение.Регулярные выражения. Поиск по шаблону в начале строки
Метод
Метод
re.match(pattern, string)
ищет сходства по заданному шаблону в начале строки. В случае, если искомая подстрока найдена, мы можем вывести её содержимое используя метод метод group()
Блок else в циклах
Блок
Блок
else
выполняется, если выполняется условие выхода из цикла. Это значит, что если цикл прерывается как-то иначе, например, ключевым словом break
или исключением, то блок else
выполнен не будет.Упрощенный вывод с f-строками
С версией языка 3.8 и выше можно выводить имя переменной и сразу ее значение, добавив знак равно после имени переменной
f-strings
являются строковыми литералами с «f» в начале и фигурными скобками, содержащие выражения, которые в дальнейшем будут заменены своими значениями.С версией языка 3.8 и выше можно выводить имя переменной и сразу ее значение, добавив знак равно после имени переменной
Генерация случайных значений с помощью модуля secrets
Встроенный модуль
Функция
Встроенный модуль
secrets
используется для генерации криптографически стойких случайных чисел, с помощью средств предоставляемых операционной системой. Что хорошо подходит при работе с паролями, токенами аутентификации.Функция
token_urlsafe(n)
возвращает URL-безопасную строку, содержащую n
байт, закодированную в Base64
.Построение графиков с помощью библиотеки matplotlib
Сначала создадим массив с данными, которые мы хотим изобразить на графике. Это может быть, например, список или
Функция
Функция
Не забудьте установить библиотеку командой
Сначала создадим массив с данными, которые мы хотим изобразить на графике. Это может быть, например, список или
numpy
массив.Функция
plot(data)
принимает наши данные и строит график в виде точек с координатами из массива и обьединяет их линиями.Функция
show()
откроет графическое окно с изображенным графиком.Не забудьте установить библиотеку командой
pip install matplotlib
Множественное присваивание
В
Множественное присваивание можно использовать не только с кортежами, но и списками, строками и любыми
В
python
вы же можете выполнять множественное присваивание разных значений разным переменным.Множественное присваивание можно использовать не только с кортежами, но и списками, строками и любыми
iterable
типами. Его плюс в том, что оно позволяет не использовать индексы, а значит, уменьшает склонность к ошибкам и делает код читаемее.Перевод чисел из десятичной дроби в обычную
У класса
У класса
float
есть прекрасный метод as_integer_ratio()
, который представляет десятичную дробь в виде обычной — пары «числитель, знаменатель».Создание штрих-кода
Для выполнения данной задачи нам понадобится библиотека
Для выполнения данной задачи нам понадобится библиотека
barcode
. Установите ее командой pip install python-barcode
в вашем терминале.Удаление конца или начала строки
В
В
Python 3.9
добавили методы, которые удаляют префикс или суффикс у строкСинтаксис f-string
Синтаксис позволяет использовать в строке символ обратного слеша "\" но не позволяет использовать его внутри фигурных скобок.
Решением данной проблемы может быть вынос символа за скобки или замена его на другое представление
Синтаксис позволяет использовать в строке символ обратного слеша "\" но не позволяет использовать его внутри фигурных скобок.
Решением данной проблемы может быть вынос символа за скобки или замена его на другое представление
Число в список цифр
Функция
Функция
map()
принимает желаемый тип выходных данных (в нашем случае это int
, целые числа) и итерируемый объект (строку, список или кортеж), элементы которого можно превратить в элементы этого типа. После этого функция list()
преобразует результат в список.Самый частый элемент в списке
Первым аргументом она получает множество из элементов списка (помним, что в множестве все элементы уникальны).
Затем применяет к каждому из них функцию count, подсчитывающую, сколько раз элемент встречается в списке.
После этого возвращает элемент множества, который имеет больше всего «попаданий».
В качестве аргумента можно использовать списки, кортежи и строки.
Первым аргументом она получает множество из элементов списка (помним, что в множестве все элементы уникальны).
Затем применяет к каждому из них функцию count, подсчитывающую, сколько раз элемент встречается в списке.
После этого возвращает элемент множества, который имеет больше всего «попаданий».
В качестве аргумента можно использовать списки, кортежи и строки.
Сортировка объектов по нескольким ключам
Для решения данной задачи нам понадобится модуль
Сначала сортируем объекты по возрасту, а потом по имени. С помощью
Для решения данной задачи нам понадобится модуль
operator
.Сначала сортируем объекты по возрасту, а потом по имени. С помощью
operator.itemgetter()
мы получаем поля возраста и имени из каждого словаря в списке. Это дает нам результат, который мы хотелиПросмотр кода определенного модуля
Модуль
Ниже используется метод
Модуль
inspect
пригодится для понимания того, что происходит за кулисами в Python. Вы даже можете вызывать его методы на них самих.Ниже используется метод
inspect.getsource()
для вывода его собственного исходного кода. Также используется метод inspect.getmodule()
для вывода модуля, в котором его определили.Аннотации типов
Python — динамически типизированный язык. Вам не нужно указывать тип данных при определении переменных, функций, классов и т.д.
Это позволяет ускорить процесс разработки. Однако мало что раздражает так сильно, как ошибка времени выполнения, возникшая из-за простого несовпадения типа. Для этого в процессе разработки многие указывают типы данных для лучшего понимания кода как для себя, так и для людей, которые его будут читать.
Python — динамически типизированный язык. Вам не нужно указывать тип данных при определении переменных, функций, классов и т.д.
Это позволяет ускорить процесс разработки. Однако мало что раздражает так сильно, как ошибка времени выполнения, возникшая из-за простого несовпадения типа. Для этого в процессе разработки многие указывают типы данных для лучшего понимания кода как для себя, так и для людей, которые его будут читать.
Определение страны и оператора по номеру телефона
Не забудьте установить библиотеку командой
phonenumbers
- один из модулей, который предоставляет множество функций для получения базовой информации о номере телефона.Не забудьте установить библиотеку командой
pip install phonenumbers
Сравниваем строки между собой
Передайте в функцию ratio две строки, которые хотите сравнить между собой и получите процентное соотношение их похожести
Перед применением установите библиотеку командой
fuzzywuzzy
- библиотека для сравнения строк.Передайте в функцию ratio две строки, которые хотите сравнить между собой и получите процентное соотношение их похожести
Перед применением установите библиотеку командой
pip install fuzzywuzzy
и pip install python-Levenshtein
(если это будет необходимо)Превью из длинного текста
Допустим, у нас есть какой-то длинный текст в виде строки и надо сделать превью этого текста. Такую проблему хорошо решает метод
Первым аргументом передается строка, вторым указывается количество символов, которое должен содержать результат. Также третьим аргументом можно передать заготовку, которая будет вставляться в конце обрезанной строки.
Допустим, у нас есть какой-то длинный текст в виде строки и надо сделать превью этого текста. Такую проблему хорошо решает метод
shorten
из модуля textwrap
. Первым аргументом передается строка, вторым указывается количество символов, которое должен содержать результат. Также третьим аргументом можно передать заготовку, которая будет вставляться в конце обрезанной строки.