Изменить список OrderedDict через цикл for - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь перебрать список 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 (возможно, потому что я пытаюсь переопределить итератор?)

1 Ответ

0 голосов
/ 08 мая 2018

Вы можете сделать:

var["key2"] = 1
var.move_to_end("key2", last=False)
...