通过for循环修改OrderedDict列表
Modify list of OrderedDict through for loop
我正在尝试遍历 OrderedDict 的列表并重新定义这些 OrderedDict 元素。
为了说明,考虑列表:
dict_list = [
OrderedDict([("key1",1)]),
OrderedDict([("key1",2)])
]
我想在所有字典上添加一个新键"key2"。
for var in dict_list:
var["key2"] = 1
但这会在 OrderedDict 的末尾添加这个键,而我想在开头添加它,所以我尝试这样做:
for var in dict_list:
var = OrderedDict([("key2",1)] + list(var.items()))
在 for 循环之外没有记住更改(可能是因为我正在尝试重新定义迭代器?)
你可以这样做:
var["key2"] = 1
var.move_to_end("key2", last=False)
我正在尝试遍历 OrderedDict 的列表并重新定义这些 OrderedDict 元素。
为了说明,考虑列表:
dict_list = [
OrderedDict([("key1",1)]),
OrderedDict([("key1",2)])
]
我想在所有字典上添加一个新键"key2"。
for var in dict_list:
var["key2"] = 1
但这会在 OrderedDict 的末尾添加这个键,而我想在开头添加它,所以我尝试这样做:
for var in dict_list:
var = OrderedDict([("key2",1)] + list(var.items()))
在 for 循环之外没有记住更改(可能是因为我正在尝试重新定义迭代器?)
你可以这样做:
var["key2"] = 1
var.move_to_end("key2", last=False)