Курс 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.
- Генерация фальшивых данных с Faker
- Библиотека itertools: объединение списков
- Функция print() — вывод информации
- Безопасные SQL-запросы в Python 3.11
- Обход дочерних элементов BeautifulSoup
- Разделение строк методом split()
- Слияние словарей в Python 3.9
- Преобразование данных в Python
- Отношения подклассов в Python
- Разделение списка на гнппы
- Метод classmethod
- Генерация случайных чисел в Python
- Повторение и перенос строки
- Анонимные функции в Python
- Управление экспортом элементов
- Объединение списков в Python
- Работа с timedelta
- Срез списка в Python
- Удаление ключей из словаря
- Создание OrderedDict
- Исправление ошибки NameError
- Сравнение def и lambda функций в Python
- Оператор is в Python
- Переменные в Python
- Генерация чисел с range()
- Определение индекса элемента списка
- Метод join() для объединения элементов
- Создание коллекций из генератора
- None в Python: использование и особенности
- Нахождение разницы между списками в Python
- Представление бесконечности в Python
- Python-dateutil — работа с датами
- Создание и обучение модели с Keras
- Установка и обучение ChatterBot
- Создание namedtuple из словаря
- Поиск наиболее частого элемента в списке
- Аннотации типов в Python
- Роль ключевого слова self
- Логические значения в Python
- Область видимости переменных
- Управление памятью в Python
- Методы split() и join() — Python строк.
- Удаление элементов из списка в Python
- Работа с функцией next() в Python
- Транспонирование 2D-массива с помощью zip















