擅长:python、mysql、java
<p>在函数签名中可以看到<code>default=None</code>-这意味着如果没有传入第三个参数,<code>default</code>将等于<code>None</code>。在</p>
<p>最后一行天真地检查<code>default</code>是否计算为true,以确定是否传入了默认值。如果<code>default</code>为真,则<code>self.default</code>将被设置为它。否则,<code>self.default</code>被设置为传入的<code>type</code>的实例。在</p>
<p>我天真地说是因为<code>default</code>可能是<code>0</code>,也可能是{<cd11>},或者(更有可能)它可能是一个对象,但该对象的计算结果是False。我宁愿</p>
<pre><code>self.default = default if default is not None else type()
</code></pre>
<p>或者,为了避免我觉得世界上最清楚的条件表达</p>
^{pr2}$