8 lines
409 B
Python
8 lines
409 B
Python
|
|
def add(*matrices):
|
||
|
|
m_sizes = [len(matrix) for matrix in matrices]
|
||
|
|
v_sizes = [len(vectors) for matrix in matrices for vectors in matrix]
|
||
|
|
same_values = lambda l: all(e == l[0] for e in l[1:])
|
||
|
|
if not same_values(m_sizes) or not same_values(v_sizes):
|
||
|
|
raise ValueError("Given matrices are not the same size.")
|
||
|
|
return [[sum(elt) for elt in zip(*vectors)] for vectors in zip(*matrices)]
|