Курс Python → Оператор @ для умножения матриц
Оператор @ в Python представляет собой оператор для умножения матриц. Этот оператор был добавлен в Python 3.5 с целью удовлетворения запросов научного сообщества. В отличие от обычного умножения (*), который используется для умножения чисел или строк, оператор @ предназначен специально для работы с матрицами. Это делает код более читаемым и понятным, особенно при работе с линейной алгеброй.
Для того чтобы использовать оператор @ для умножения матриц, необходимо перегрузить метод __matmul__ в классе объекта. Этот магический метод позволяет определить поведение оператора @ для конкретного типа объекта. Например, если у нас есть класс Matrix, мы можем перегрузить метод __matmul__, чтобы определить умножение матриц для объектов этого класса.
class Matrix:
def __init__(self, data):
self.data = data
def __matmul__(self, other):
# Определение умножения матриц для объектов класса Matrix
pass
После того как мы перегрузили метод __matmul__ в классе Matrix, мы можем использовать оператор @ для умножения матриц, создавая экземпляры этого класса. Например:
matrix1 = Matrix([[1, 2], [3, 4]])
matrix2 = Matrix([[5, 6], [7, 8]])
result = matrix1 @ matrix2
print(result)
Таким образом, оператор @ предоставляет удобный способ умножения матриц в Python, делая код более читаемым и понятным при работе с линейной алгеброй.
Другие уроки курса "Python"
- Копирование объектов в Python
- Создание множества в Python
- Counter() — подсчет элементов
- Удаление элементов из списка в Python
- Пустой оператор pass в Python
- Python: отличительная особенность — отступы
- Работа с временем в Python
- Перезапуск ячейки в Jupyter Notebook с dostoevsky
- Тип данных TypeVarTuple
- Работа с буфером обмена на Python
- Вычисление логарифмов в Python
- GitHub в Telegram: подписка на уведомления
- Любовь к Python
- Работа с Colorama
- Преобразование типов данных в set comprehension
- Оформление текста в консоли с TermColor
- Метод rsub в Python: расширение функциональности вычитания
- Python: Фильтрация списков с помощью filter()
- Оператор walrus в Python
- Применение функции map() в Python
- Группы исключений в Python
- Документирование функций в Python
- Метод add для класса Vector
- Основы слова
- Игра «Камень, ножницы, бумага» — Python
- Оператор морж в Python 3.8
- Генерация случайных чисел в Python
- Итераторы с потерямиZIP
- Явный импорт в Python
- Работа со строками в Python
- Numpy: разбиение массивов
- Область видимости переменных
- Поиск индекса элемента в списке
- Поиск всех индексов подстроки
- Работа с байтовыми строками в Python
- Цикл for в Python
- Библиотека Chartify: руководство
- Создание комплексных чисел
- Тайное преобразование типа ключа
- Работа с Requests для HTTP-запросов
- Получение ID процесса
- Наследование в программировании
- Декоратор Ajax required
- Работа с NumPy массивами
- Объединение кортежей в Python
- Генерация случайных чисел в Python
- Глобальные переменные в Python
- Генераторы в Python















