我需要知道如何在运行时检查给定类的实例是否存在。因此,我需要在此实例与其他类之间进行交互。这些类之间没有任何关系(组成,聚合和继承)。那么,如何获得此类的引用(如果存在)?
答案 0 :(得分:0)
如果您只想知道某个类是否已实例化(或实例化了多少次),只需在该类中保留一个计数器:
class Foo:
counter = 0
def __init__(self):
Foo.counter += 1
Foo()
print(Foo.counter)
或者,如果要保留所有实例的句柄(通过引用),请存储self
:
class Foo:
classes = []
def __init__(self):
Foo.classes.append(self)
Foo()
print(Foo.classes[0])