擅长:python、mysql、java
<p>这个:</p>
<pre><code>def someRecursiveFn(item, val):
val = val if val else 0
</code></pre>
<p>但是python习语<code>if val</code>非常宽泛,因为它可以有不同的含义,其中一些甚至可以表示特定上下文中的某些内容(例如<code>0</code>值),与javascript中的<code>undefined</code>值相反。在</p>
<p>在python中,以下所有内容都被视为<strong>false</strong>:</p>
<ul>
<li>没有</li>
<li>假</li>
<li>零,0.0L,例如0.0L,任何类型</li>
<li>任何空序列,例如,',(),[]。在</li>
<li>任何空映射,例如{}。在</li>
<li>用户定义类的实例,如果该类定义了一个<strong>非零</strong>()或<strong>len</strong>()方法,则当该方法返回整数0或bool值False时</li>
</ul>