我正在创建一个带有多种武器的小游戏。每个武器都是“武器”类中的一个对象变量。我想创建一个数组,其中包含每个单个Weapon对象作为其变量名。有没有简便的方法,还是我必须自己在列表中键入每个对象的名称?为了明确起见,我不想列出对象的属性,我想要一些可以返回属于给定类的对象列表的东西。
答案 0 :(得分:1)
您通常需要通过覆盖baseUrl='http://locahost:4200/users';
来自己构建这样的列表。
__new__
请记住,除非您使用弱引用来跟踪实例,否则此类列表将延迟实例被垃圾回收。另外,不会自动从列表中删除实例;为此,使用class Weapon:
weapons = []
def __new__(cls, *args, **kwargs):
obj = super().__new__(cls, *args, **kwargs)
Weapon.weapons.append(obj)
(将实例ID映射到实例本身以进行轻松查找)可能会更简单。