[sum(value) for value in zip(*array)] is pretty standard.
This might help you understand it:
In [1]: array=[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
In [2]: array
Out[2]: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
In [3]: *array
------------------------------------------------------------
File "<ipython console>", line 1
*array
^
<type 'exceptions.SyntaxError'>: invalid syntax
The unary star is not an operator by itself. It unwraps array elements into arguments into function calls.
In [4]: zip(*array)
Out[4]: [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
zip() is a built-in function
In [5]: zip(*array)[0]
Out[5]: (1, 4, 7)
each element for the list returned by zip is a set of numbers you want.
In [6]: sum(zip(*array)[0])
Out[6]: 12
In [7]: [sum(values) for values in zip(*array)]
Out[7]: [12, 15, 18]