4 ситуации из жизни лямбда-функций в Python. Использование в качестве фабричной функции
Вероятно, вам известно, что помимо встроенного типа словаря dict, в нашем распоряжении есть еще другой словарь под названием defaultdict. Этот класс является подклассом типа dict, который доступен в модуле collections. Конструктор defaultdict представляет собой defaultdict([default_factory[, ...]]). default_factory вызывается для создания значения при условии, что в словаре еще нет заданного ключа.
Разъяснивший Python
Вероятно, вам известно, что помимо встроенного типа словаря dict, в нашем распоряжении есть еще другой словарь под названием defaultdict. Этот класс является подклассом типа dict, который доступен в модуле collections. Конструктор defaultdict представляет собой defaultdict([default_factory[, ...]]). default_factory вызывается для создания значения при условии, что в словаре еще нет заданного ключа.
Разъяснивший Python
❤2
Принцип открытости/закрытости (OCP)
Принцип открытости/закрытости (OCP) — один из основополагающих принципов объектно-ориентированного программирования (ООП), сформулированный Бертраном Мейером. Он гласит: Программные сущности (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменения.
Иными словами код должен быть легко расширяемым для добавления новых функций или поведения. Существующий код не должен меняться при добавлении новых функций.
Разъяснивший Python
Принцип открытости/закрытости (OCP) — один из основополагающих принципов объектно-ориентированного программирования (ООП), сформулированный Бертраном Мейером. Он гласит: Программные сущности (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменения.
Иными словами код должен быть легко расширяемым для добавления новых функций или поведения. Существующий код не должен меняться при добавлении новых функций.
Разъяснивший Python
👍1
Функция heapq.heapify()
Функция
Разъяснивший Python
Функция
heapq.heapify() используется для преобразования списка в кучу (heap). Куча — это особая структура данных, представляющая собой полное бинарное дерево, в котором каждый родительский элемент меньше или равен своим дочерним элементам.Разъяснивший Python
👍1
Принцип разделения интерфейса (ISP)
ISP (Interface Segregation Principle) — один из принципов SOLID, который гласит: «Клиенты не должны зависеть от интерфейсов, которые они не используют».
Другими словами, вместо создания общих интерфейсов следует создавать специфические интерфейсы, предназначенные для конкретных клиентов. Интерфейсы должны быть максимально сплоченными, то есть все методы интерфейса должны быть тесно связаны между собой и решать одну задачу.
Разъяснивший Python
ISP (Interface Segregation Principle) — один из принципов SOLID, который гласит: «Клиенты не должны зависеть от интерфейсов, которые они не используют».
Другими словами, вместо создания общих интерфейсов следует создавать специфические интерфейсы, предназначенные для конкретных клиентов. Интерфейсы должны быть максимально сплоченными, то есть все методы интерфейса должны быть тесно связаны между собой и решать одну задачу.
Разъяснивший Python
👍4
Метод bytes.hex() — это метод, который преобразует объект
Как работает:
Например, байт со значением 10 (в десятичной системе) будет представлен как "0a" в шестнадцатеричной системе.
Разъяснивший Python
bytes в шестнадцатеричную строку.Как работает:
bytes.hex() возвращает строку, состоящую из шестнадцатеричных цифр, представляющих каждый байт в объекте bytes. Шестнадцатеричные цифры идут парами, где первая цифра представляет старший полубайт, а вторая - младший полубайт.Например, байт со значением 10 (в десятичной системе) будет представлен как "0a" в шестнадцатеричной системе.
Разъяснивший Python
Метод strptime()
Синтаксис:
Аргументы:
Разъяснивший Python
strptime() — это метод класса datetime, который используется для преобразования строки, представляющей дату и время, в объект datetime.Синтаксис:
datetime.strptime(date_string, format_string)
Аргументы:
date_string: Строка, представляющая дату и время.format_string: Строка, представляющая формат даты и времени.Разъяснивший Python
Ход короля
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли король попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки.
Программа должна вывести «YES», если из первой клетки ходом короля можно попасть во вторую, или «NO» в противном случае.
Разъяснивший Python
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли король попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки.
Программа должна вывести «YES», если из первой клетки ходом короля можно попасть во вторую, или «NO» в противном случае.
Разъяснивший Python
👍2
Функция attrgetter()
Функция
Разъяснивший Python
Функция
attrgetter() из модуля operator используется для получения значения атрибута объекта. Она позволяет избежать явного указания имени атрибута, что может сделать код более читаемым и удобным.Разъяснивший Python
Декоратор lru_cache()
Декоратор
Как работает lru_cache():
Декоратор
Разъяснивший Python
Декоратор
lru_cache() из модуля functools в Python используется для мемоизации функций, то есть для кэширования результатов их вычислений. Это может значительно повысить производительность кода, если функция выполняет вычисления, которые требуют много времени.Как работает lru_cache():
Декоратор
lru_cache() работает по алгоритму LRU (Least Recently Used), что означает, что он кэширует последние maxsize результатов вычислений функции. Если кэш переполняется, то наименееРазъяснивший Python
👍4
itemgetter()
Разъяснивший Python
itemgetter() — это функция из модуля operator, которая используется для извлечения элементов из объектов, поддерживающих индексирование (например, списки, кортежи, строки).Разъяснивший Python
👍1
Функция bisect.insort()
Функция
Разъяснивший Python
Функция
bisect.insort() в Python используется для вставки элемента в уже отсортированный список, сохраняя его отсортированным. Она работает с помощью алгоритма бинарного поиска, что делает ее более эффективной, чем линейный поиск,Разъяснивший Python
🔥2
string.rjust
Метод
Разъяснивший Python
Метод
rjust() выравнивает строку по правому краю до заданной ширины, используя указанный символ. Если ширина меньше или равна длине строки, возвращается исходная строка.Разъяснивший Python
👍2
Узнаем разницу в днях между датами представленными в виде строк
В данном коде мы используем функцию
Разъяснивший Python
В данном коде мы используем функцию
strptime из модуля datetime, чтобы преобразовать строки в объекты datetime. Затем мы вычисляем разницу между датами с помощью оператора - и получаем абсолютное значение разницы с помощью функции abs. Наконец, мы получаем разницу в днях, используя атрибут days разницы объекта.Разъяснивший Python
Функция statistics.mean()
Функция
Разъяснивший Python
Функция
statistics.mean() в Python используется для вычисления среднего арифметического набора данных. Она находится в модуле statistics, который нужно предварительно импортировать.Разъяснивший Python
Функция hypot
Функция
Синтаксис:
Аргументы:
Разъяснивший Python
Функция
hypot из модуля math в Python используется для вычисления евклидовой нормы, также известной как гипотенуза прямоугольного треугольника.Синтаксис:
import math
hypot(x, y)
Аргументы:
x: Первый катет прямоугольного треугольника.y: Второй катет прямоугольного треугольника.Разъяснивший Python
Число в список цифр
Превращает целое число в список его цифр.
Функция
Разъяснивший Python
Превращает целое число в список его цифр.
Функция
map() принимает желаемый тип выходных данных (в нашем случае это int, целые числа) и итерируемый объект (строку, список или кортеж), элементы которого можно превратить в элементы этого типа. После этого другая функция list() преобразует результат в список.Разъяснивший Python
default_int_handler
Функциональность:
Разъяснивший Python
default_int_handler — это функция, которая используется в качестве обработчика сигнала SIGINT по умолчанию. Она вызывается, когда пользователь нажимает комбинацию клавиш Ctrl+C, чтобы прервать работу программы.Функциональность:
default_int_handler прерывает работу программы, генерируя исключение KeyboardInterrupt. Эта функция сбрасывает обработчик сигнала SIGINT, восстанавливая его исходное состояние.Разъяснивший Python
👍1
Печать строки N раз
Этот пример может печатать любую строку n раз без использования циклов Python.
Разъяснивший Python
Этот пример может печатать любую строку n раз без использования циклов Python.
Разъяснивший Python
Список всех переменных
Эта магическая команда выдает список всех глобальных переменных, используемых в вашем блокноте.
Для того чтобы получить переменные определенного типа, мы должны указать этот тип после магической команды. Приведенный выше код отображает все переменные строкового типа в качестве выходных данных.
Разъяснивший Python
Эта магическая команда выдает список всех глобальных переменных, используемых в вашем блокноте.
Для того чтобы получить переменные определенного типа, мы должны указать этот тип после магической команды. Приведенный выше код отображает все переменные строкового типа в качестве выходных данных.
Разъяснивший Python
🤨18👎6👏2🤣1
Отображение графиков Matplotlib
Разъяснивший Python
%matplotlib inline — это самая популярная магическая команда. Она позволяет отображать в блокнотах графики Matplotlib. Эта команда активирует интерактивную поддержку Matplotlib для блокнота Jupyter.Разъяснивший Python
👍2
Печать в одной строке
Мы знаем, что функция
Разъяснивший Python
Мы знаем, что функция
print выполняет вывод в каждой строке, и если использовать две функции print, они выполнят печать в две строки. Этот пример покажет, как выполнять вывод в той же строке без перехода на новую.Разъяснивший Python