<p>将<code>zip</code>与<code>*</code>一起使用:</p>
<pre><code>>>> [sum(x)/float(len(x)) for x in zip(*list_1)]
[4.0, 4.25, 5.75]
>>> [sum(x)/float(len(x)) for x in zip(*list_2)]
[1.6666666666666667, 5.666666666666667, 7.666666666666667, 2.3333333333333335, 4.666666666666667]
</code></pre>
<p>来自<a href="http://docs.python.org/2/library/functions.html#zip" rel="nofollow">docs</a>:</p>
<blockquote>
<p><code>zip()</code> in conjunction with the <code>*</code> operator can be used to unzip a list.</p>
</blockquote>
^{pr2}$
<p><strong>时间比较:</strong></p>
<pre><code>>>> from itertools import izip
>>> import numpy as np
>>> lis = list_1*1000
>>> arr = np.array(lis)
>>> %timeit np.mean(lis, 0)
10 loops, best of 3: 31.9 ms per loop
>>> %timeit np.mean(arr, 0)
1000 loops, best of 3: 221 us per loop #clear winner
>>> %timeit [sum(x)/float(len(x)) for x in zip(*lis)]
100 loops, best of 3: 826 us per loop
#itertools.izip is memory efficient.
>>> %timeit [sum(x)/float(len(x)) for x in izip(*lis)]
100 loops, best of 3: 881 us per loop
</code></pre>