Python列表字典名称从列表元素动态生成

时间:2019-01-23 08:29:04

标签: python dictionary

我有n个值的列表,例如:

list1=['A','B','C']

我想从这些值组成一个字典(内部循环),然后为每个字典分配KVP。

示例:

for i in list1:
    value of i = dict()     # A, B , C will become dict in loop
    i[key] = value          # ,ie, A[key] = value ; & so on, for B , C dicts

print A # prints dict A ......similar, B and C dicts..

注意-dict将在循环内定义,但我也想在循环外保留dict及其KVP。另外,字典名称(而不是字典KVP)将由列表值动态形成。

1 个答案:

答案 0 :(得分:0)

您要尝试创建的是动态命名的变量:您想要一个变量A,因为列表中有值"A"

在Python中执行此操作的方法是使用dict。因此,不要执行A = dict()(这是您的代码要尝试的操作),而是这样做:

for i in list1:
    mydictofdicts[i] = dict()     # mydictofdicts["A"] (etc) will become dict in loop
    mydictofdicts[i][key] = value