擅长:python、mysql、java
<p>通过给lambda一个元组作为参数,可以显式地命名子列表元素(假设它们的数量总是固定的):</p>
<pre><code>>>> a = [[1,2,3],[4,5,6]]
>>> N = 10
>>> filter(lambda (i, j, k): i + j + k > N, a)
[[4, 5, 6]]
</code></pre>
<p>如果像您试图指定的那样指定“lambda i,j,k”,则表示lambda将接收三个参数。但是filter会给lambda一次一个子列表的每个元素,也就是说,<em>one</em>。通过将参数括在括号中,您可以说lambda将收到一个参数,但是您还可以命名它的每个组件。</p>