擅长:python、mysql、java
<p>这是另一个实例,但是您已经将<code>links</code>定义为类变量而不是实例变量。在</p>
<p>实例变量的定义如下:</p>
<pre><code>class House(object): # Always use new-style classes except for backward compatibility
def __init__(self):
self.links = []
</code></pre>
<p>注意,在Python中,与其他语言不同,实例变量被显式声明为实例的属性。这通常发生在<code>__init__</code>方法中,以确保每个实例都有变量。在</p>
<p>然后,子类如下所示:</p>
^{pr2}$
<p>执行代码会得到正确的结果:</p>
<pre><code>>>> house = House()
>>> villa = Villa()
>>> link = Link()
>>> house.links.append(link)
>>> print house.links
[<__main__.Link instance at 0xcbaa8>]
>>> print villa.links
[]
</code></pre>