class Foo(object):
#define foolist at the class level
#(not at the instance level as self.foolist would be defined in a method)
foolist=[]
A=Foo()
B=Foo()
A.foolist.append("bar")
print (B.foolist) # ["bar"]
print (A.foolist is B.foolist) #True -- A and B are sharing the same foolist variable.
使用类inheritane很容易“共享”实例变量
示例:
但是你不需要一个方法来给一个类实例分配一个新的属性。。。
现在可以像使用任何其他变量一样使用
check_instance.j
(或check_instance.k
)。这看起来有点像魔法,直到你知道:
完全等同于:
(如果稍微考虑一下,这就解释了
self
参数是什么)。我不完全确定您在这里要实现什么——还有一些类变量是由类的所有实例共享的。。。
另一个类看不到
j
;但是,我认为您的意思是self.j
,它可以。相关问题 更多 >
编程相关推荐