What is the difference between None check and var or default syntax in Python?
<p>I noted this syntax listed as a gotchya but with no explanation as to why:</p>

<pre><code>def func(x=None):
    #good
    if x == None:
        x = []

    #bad
    x = x or []
</code></pre>

<p>In what ways can this be a gotchya?</p>
