
如题,如果类里的变量长这样,XX的值为0到23。怎么实现给awXX赋值
可以用getattr取当前属性
class Awards:
def __init__(self):
self.aw01 = []
self.aw02 = []
self.aw03 = []
self.aw04 = []
obj = Awards()
for i in range(1, 5):
var_name = "aw"+ f'{i:02}'
print(getattr(obj, var_name))
不过一般在设计类的时候尽量避免这样做,而是用字典保存
class Awards:
def __init__(self):
self.datas = {}
for i in range(1, 5):
self.datas["aw" + f'{i:02}'] = []
obj = Awards()
print(obj.datas)