Інші наводили приклади, як це зробити в чистому пітоні. Якщо ви хочете зробити це з масивами зі 100 000 елементами, слід використовувати numpy:
In [1]: import numpy as np
In [2]: vector1 = np.array([1, 2, 3])
In [3]: vector2 = np.array([4, 5, 6])
Зробити додаток, що сприймає стихію, зараз настільки банально
In [4]: sum_vector = vector1 + vector2
In [5]: print sum_vector
[5 7 9]
так само, як у Matlab.
Час порівняння з найшвидшою версією Ашвіні:
In [16]: from operator import add
In [17]: n = 10**5
In [18]: vector2 = np.tile([4,5,6], n)
In [19]: vector1 = np.tile([1,2,3], n)
In [20]: list1 = [1,2,3]*n
In [21]: list2 = [4,5,6]*n
In [22]: timeit map(add, list1, list2)
10 loops, best of 3: 26.9 ms per loop
In [23]: timeit vector1 + vector2
1000 loops, best of 3: 1.06 ms per loop
Так це швидше на 25 фактор! Але використовуйте те, що відповідає вашій ситуації. Для простої програми ви, мабуть, не хочете встановлювати numpy, тому використовуйте стандартний python (і я вважаю версію Генрі найбільш пітонічною). Якщо ви стикаєтеся з серйозним скороченням кількості, нехай numpy
займається важким підйомом. Для швидкісних виродків: здається, що нумерований розчин швидше починається навколо n = 8
.