在 for 循环中调用字典变量名

call dictionary variable names in for-loops

我想生成多个具有相同名称但使用 for 循环编号的对象。我能够使用字典生成对象,但我不知道如何调用它来为对象分配值。

class Class:
    def __init__(self):
        self.value = None

dic = {}
for i in range(9):
    dic['object{0}'.format(i)] = Object()

现在它生成名为 object0、object1、... 的对象。但是现在我想为每个对象分配属性值,所以 object0.value = 0, object1.value = 1, ... 。如何用当前名称调用每个循环中的对象?

通过使用键值:

dic = {}

for i in range(9):
     dic['object{0}'.format(i)] = Object()
     dic['object{0}'.format(i)].value="your value"

或者在第二个循环中:

dic = {}

for i in range(9):
     dic['object{0}'.format(i)] = Object()

for i in range(9):
     dic['object{0}'.format(i)].value="your value"