有没有办法通过将对象与其属性进行匹配来获取对象? 例如:
class band:
def __init__(self, name, number):
self.name = name
self.number = number
rivers = band("rivers", 1)
patrick = band("pat" , 2)
brian = band("brian" , 3)
scott = band("scott", 4)
在这段代码中,有没有办法让我使用数字(比方说1),在band类中找到对象河流并获取其名称属性?
感谢您花时间阅读本文并度过愉快的一天。
答案 0 :(得分:0)
在这段代码中,有没有办法让我使用数字(比方说1),在band类中找到对象河流并获取其名称属性?
在此代码中,NO。因为您没有将name
的值保存到类属性中。
但是,如果您的班级结构如下:
class band:
def __init__(self, name, number):
self.number = number
self.name = name # <--- Here is the difference
你可以做到。请说rivers
,patrick
,brian
和scott
是列表的一部分:
my_list = [rivers, patrick, brian, scott]
对列表进行迭代,并打印name
的{{1}}为number
的{{1}}类:
1
答案 1 :(得分:0)
您可以将字典映射编号存储到频段以实现该目的。
例如
bands = {}
class band:
def __init__(self, name, number):
self.number = number
self.name = name
bands[number] = self
def getBandFromNumber(number):
return bands[number]