Курс Python → Переопределение оператора % для объектов
Python предоставляет возможность переопределить стандартные арифметические операторы для пользовательских объектов. Например, если вы работаете с комплексными числами или другими типами данных, где операция остатка от деления имеет смысл, то переопределение метода __mod__ может быть очень полезным.
Для того чтобы объект поддерживал стандартную математическую операцию остатка от деления, необходимо определить метод __mod__ в классе этого объекта. Этот метод должен принимать два аргумента — self и other, где self представляет сам объект, а other — объект, с которым выполняется операция.
class MyNumber:
def __init__(self, value):
self.value = value
def __mod__(self, other):
return self.value % other.value
num1 = MyNumber(10)
num2 = MyNumber(3)
print(num1 % num2) # Выведет 1
В приведенном примере мы создали класс MyNumber, который содержит атрибут value и переопределили метод __mod__, чтобы объекты этого класса могли поддерживать операцию остатка от деления. При вызове num1 % num2 будет возвращено остаток от деления числа 10 на 3, то есть 1.
Таким образом, переопределение метода __mod__ позволяет объекту в Python поддерживать стандартную математическую операцию остатка от деления и использоваться в выражениях с этим оператором.
Другие уроки курса "Python"
- Регулярные выражения: метод match
- Просмотр внешних файлов в %pycat
- Печать в одной строке
- Библиотека Rich: форматирование текста
- Работа с исключениями в Python
- Удаление первого элемента списка
- Визуализация пропусков данных
- Функции высшего порядка в Python
- Обучение модели с указанием эпох
- Обмен значений переменных в Python
- Логические значения в Python
- Локальные переменные.
- Генераторы в Python
- Зарезервированные слова в Python
- ChainMap избыточные ключи
- Работа с контекстными переменными
- Расширение операции побитового «и» в Python
- Установка и использование библиотеки google
- Сравнение def и lambda функций в Python
- Отправка POST-запроса в REST API
- Функции классификации комплексных чисел
- Удаление дубликатов с помощью множеств
- Принципы программирования
- Генераторы в Python
- Различия символов в Python
- Глобальные переменные в Python
- Python OrderedDict и fromkeys() — работа с словарями
- Печать календаря
- Изменение переменной в Python: nonlocal
- Проверка класса объекта
- Проверка элементов списка условием
- Mad Libs Generator
- Методы HTTP запросов в Flask
- Работа с CSV файлами в Python
- Оформление кода на Python
- Lambda-функция в Python: использование с map() и sum()
- Pillow: работа с изображениями
- Подсчет элементов в Python
- Проектирование Singleton с метаклассом
- Методы Python для работы с данными
- Слияние словарей в Python 3.9
- Введение в Python
- Обход элементов в Python
- Работа с рекламными данными в Pandas
- Порядок и длина множеств в Python
- Декодирование байтов в строку
- Метод is_absolute() для PurePath















