Understanding objects relationship in python (confusion)
本问题已经有最佳答案,请猛点这里访问。
我对这个例子有点困惑:
1 2 3 4 5 6 7 8 9 10 11 12 | >>> class A: ... foo = [] >>> a, b = A(), A() >>> a <__main__.A instance at 0x0000000002296A88> >>> b <__main__.A instance at 0x0000000002296F88> >>> a.foo.append(5) >>> a.foo [5] >>> b.foo [5] |
1)python如何连接两个不同的实例?
2)实例是否在附加值后引用了类
但当我添加
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | >>> class A: ... def __init__(self): ... self.foo = [] ... >>> a, b = A(), A() >>> a <__main__.A instance at 0x00000000021EC508> >>> b <__main__.A instance at 0x0000000002296F88> >>> a.foo.append(5) >>> a.foo [5] >>> b.foo [] |
3)
在第一种情况下,
在第二种情况下,
在第一个示例中,
1 2 3 4 | a1 = A() a2 = A() print a1.foo is a2.foo print a1.foo is A.foo |
然而,在第二个示例中,