Python multiply 2 arrays -


this continued thread: python array multiply

i need multiply array vs array. don't want use "numpy". previous thread, learned how multiply

number*array:

hh=[[82.5], [168.5]] n=1./5 ll = [[x*n x in y] y in hh] 

but how can multiply array*array: ->matrix multiplication.

hh=[[82.5], [168.5]] n=zip(*hh)                                        -> n must transpose of hh!!!!! ll = [[[x*z x in y] y in hh] z in n] 

? thanks


edit:

input:

hh=[[82.5], [168.5]] n=zip(*hh)                            #n=[(82.5, 168.5)] 

output want: hh*n

[[  6806.25  13901.25]  [ 13901.25  28392.25]] 

use operator.mul , map.

from operator import mul map(mul, list1, list2) 

matrix n*hh n=zip(**hh)

>>> hh = [[82.5], [168.5]] >>> [ [i*j in x j in y] x in hh y in zip(*hh) ] [[6806.25, 13901.25], [13901.25, 28392.25]]  >>> hh = [[2], [4]] >>> [ [i*j in x j in y] x in hh y in zip(*hh) ] [[4, 8], [8, 16]]  >>> hh = [[2], [4], [6]] >>> [ [i*j in x j in y] x in hh y in zip(*hh) ] [[4, 8, 12], [8, 16, 24], [12, 24, 36]]  >>> hh = [[1, 2, 4]] >>> [ [i*j in x j in y] x in hh y in zip(*hh) ] [[1, 2, 4], [2, 4, 8], [4, 8, 16]]  >>> hh = [[1, 2], [3, 4]] >>> [ [i*j in x j in y] x in hh y in zip(*hh) ] [[1, 3, 2, 6], [2, 4, 4, 8], [3, 9, 4, 12], [6, 12, 8, 16]] 

if looking else, here couple examples started:

>>> = [1, 2, 3] >>> b = [0, 1, 2] >>> [ x*y x in y in b] [0, 1, 2, 0, 2, 4, 0, 3, 6] >>> [[x*y x in a] y in b] [[0, 0, 0], [1, 2, 3], [2, 4, 6]] 

Comments