擅长:python、mysql、java
<p>正如<a href="https://stackoverflow.com/questions/4256357/how-to-override-python-listiterator-behaviour/4256673#4256673">@Sven</a>所说,这是错误的错误。但这并不是重点,关键是它被破坏了,因为它不是您应该做的事情:阻止<code>__getattr__</code>提升<code>AttributeError</code>意味着您已经重写了Python测试对象是否有属性的默认方法,并将其替换为新的属性(<code>ini_defined(foo.bar)</code>)。</p>
<p>但是Python已经有了<a href="http://docs.python.org/library/functions.html#hasattr" rel="nofollow noreferrer">^{<cd4>}</a>!为什么不用那个?</p>
<pre><code>>>> class Foo:
... bar = None
...
>>> hasattr(Foo, "bar")
True
>>> hasattr(Foo, "baz")
False
</code></pre>