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
Post a Comment