Внешнее применение в NumPy
Чтобы применить универсальную операцию ко всем парам
элементов двух рядов, используют метод outer.
Он берёт
каждый элемент первого ряда и
каждый элемент второго и строит
таблицу всех сочетаний: для
умножения это таблица произведений,
для сложения таблица всех сумм.
Такой приём есть у любой универсальной
функции, это не отдельная outer
из раздела про матрицы, а метод
самой операции.
Перемножим два коротких ряда цен:
import numpy as np
a = np.array([2, 3])
b = np.array([10, 20])
table = np.multiply.outer(a, b)
print(table) # выведет [[20 40]
# [30 60]]
Таблица сумм для тех же рядов строится аналогично через сложение:
import numpy as np
a = np.array([2, 3])
b = np.array([10, 20])
print(np.add.outer(a, b)) # выведет [[12 22]
# [13 23]]
Для рядов [1, 2] и [5, 10]
постройте таблицу произведений
всех пар и выведите её.
Для цен [100] и скидок
[0, 5, 10] получите таблицу
сумм каждой пары и выведите результат.