【发布时间】:2022-01-03 16:32:50
【问题描述】:
我知道每个实例都会继承该属性,但我想要一个 函数 或者我应该将其称为该类的 方法 以返回创建的所有实例的集合那个班的。
假设我创建了 3 个实例并从最后一个实例调用一个方法,该方法将返回所有先前创建的实例以及我从中调用它的实例。
我可以通过制作一个列表来实现它,但是可以返回一个集合吗?
我是否缺少某种构造函数?
class Bee():
instances = []
def __init__(self, name, identifier):
self.name = name
self.identifier = identifier
def __str__(self):
self.instances.append(f"{self.identifier} {self.name}")
return f"{self.identifier} {self.name}"
def get_hive(self):
return self.instances
【问题讨论】:
-
您真的不想在每次调用
__str__时都将实例添加到列表中。在__init__中添加实例。 -
首先你需要定义两个实例何时被认为是相等的
标签: python class object constructor set