Lambda function and 0
<p>I want to make a function that changes each elements in list with lambda function.</p>

<pre><code>a = [1,5,2,4]

def func1(list,func2):
    for x in range(len(list)):
        list[x] = func2(list[x])

func1(a,lambda x: x&gt;3 and 10 or x)
print a
</code></pre>

<p>The result is [1,10,2,10]</p>

<p>This is OK. But I change '10' to '0'</p>

<pre><code>func1(a,lambda x: x&gt;3 and 0 or x)
</code></pre>

<p>The result is [1,5,2,4]</p>

<p>Why doesn't the result be [1,0,2,0]?</p>

<p>I'm sorry that I'm poor at English.</p>
