Курс Python → Метод add для класса Vector
Метод add(self, other) в Python позволяет определить поведение объекта при использовании оператора сложения +. Этот метод полезен при работе с пользовательскими типами данных, такими как векторы, матрицы и другие структуры данных, где определение операции сложения имеет смысл.
В приведенном примере, если операнд other также является объектом типа Vector, мы складываем соответствующие координаты векторов и возвращаем новый объект Vector, представляющий сумму. Если other не является вектором, мы вызываем исключение TypeError, указывая, что операция не поддерживается.
Переопределение метода add позволяет объекту поддерживать стандартную математическую операцию сложения в Python. Это удобно, так как позволяет работать с объектами более естественным образом, как если бы они были встроенными типами данных.
class Vector:
def __init__(self, x, y):
self.x = x
self.y = y
def add(self, other):
if isinstance(other, Vector):
return Vector(self.x + other.x, self.y + other.y)
else:
raise TypeError("Unsupported operation")
В данном примере мы создаем класс Vector, у которого есть метод add, который определяет поведение сложения векторов. Если операнд other является объектом типа Vector, мы создаем новый вектор с соответствующими суммированными координатами. Если other не является вектором, то выбрасываем исключение TypeError.
Другие уроки курса "Python"
- Работа с множествами в Python
- Python: динамическая типизация и проверка типов
- Поиск индексов в списке
- Работа с изображениями PIL
- Управление асинхронными задачами на Python.
- Генераторы в Python
- Транспонирование матрицы
- IPython и Jupyter Notebook: руководство
- Резервирование символов в Python
- Объединение словарей в Python
- Оператор assert в Python
- Разделение списка на гнппы
- Метод setdefault() в Python
- ChainMap.new_child() — добавление нового словаря
- Генераторы данных
- Аннотации типов в Python
- Сортировка списка по индексам
- Расчет времени выполнения
- Работа с типами данных в Python с помощью pydantic.
- Настройка вывода в Numpy
- Распаковка с оператором *
- Переопределение метода __pow__
- Pretty-printing JSON в Python
- Логические значения в Python
- Выборка чисел
- Использование defaultdict в Python
- Игра «Камень, ножницы, бумага» — Python
- Библиотека itertools: объединение списков
- Нахождение отличий в списках
- Функция zip() — объединение последовательностей
- Атрибуты объекта в Python
- UserList в Python: Описание и примеры использования
- Склеивание строк через метод join()
- %pinfo: получение информации об объекте
- Работа с байтовыми строками в Python
- Транспонирование 2D-массива с помощью zip
- Курсы Яндекс Практикум
- Создание пустых функций и классов в Python
- Основы Python за 14 дней
- Сортировка в Python
- Измерение потребления памяти при сортировке
- Отправка поздравлений по дню рождения
- Python: отсутствие точек с запятыми
- Подробная информация о %pinfo















