Я хочу масштабировать вектор k = [1, 2, 3] несколько раз, используя последовательность чисел s = [2, 4, 6, 8, 10]. Ожидаемый результат - [2, 4, 6], [4, 8, 12], .... Как я могу сделать это без использования циклов в Python? Использование al oop нежелательно, так как в моей реальной задаче длина s составляет миллион, а фактические вычисления включают в себя больше операций, чем просто масштабирование.
С numpy библиотекой
import numpy as np k =[1,2,3] s=[2,4,6,8,10] np.multiply.outer(k, s).T #your result will be: array([[ 2, 4, 6], [ 4, 8, 12], [ 6, 12, 18], [ 8, 16, 24], [10, 20, 30]])