У меня есть список, который содержит списки. Эти списки содержат словари, и эти словари содержат сами словари (Список -> Списки -> словари -> словари).
Данные выглядят так (только небольшая часть, у меня есть не только 3, как здесь, но 1500 изсписки «второго уровня», которые обычно содержат около 5-15 словарей, которые содержат (всегда) 14 словарей; кроме того, словари внутри списков не совпадают в разных списках, как здесь):
nest = [[{'Dict11': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict12': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict13': {7: 'C1', 8: 'C2', 9:'C3'}},
{ 'Dict21': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict22': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict23': {7: 'C1', 8: 'C2', 9:'C3'}},
{ 'Dict31': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict32': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict33': {7: 'C1', 8: 'C2', 9:'C3'}}],
[{ 'Dict11': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict12': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict13': {7: 'C1', 8: 'C2', 9:'C3'}},
{ 'Dict21': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict22': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict23': {7: 'C1', 8: 'C2', 9:'C3'}},
{ 'Dict31': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict32': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict33': {7: 'C1', 8: 'C2', 9:'C3'}}],
[{ 'Dict11': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict12': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict13': {7: 'C1', 8: 'C2', 9:'C3'}},
{ 'Dict21': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict22': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict23': {7: 'C1', 8: 'C2', 9:'C3'}},
{ 'Dict31': {1: 'A1', 2: 'A2', 3:'A3'},
'Dict32': {4: 'B1', 5: 'B2', 6:'B3'},
'Dict33': {7: 'C1', 8: 'C2', 9:'C3'}}]]
Iесть второй список, который имеет ту же длину, что и мой список (3 в этом примере, но 1500 в моих данных).
val = [100, 200, 300]
Я хочу добавить значения из этого списка (val) во вложенные словари. Таким образом, первое значение второго списка должно появляться в каждом подкатегории первого списка, второе значение второго списка должно появляться в каждом подкатегории второго списка и т. Д.
В основном это должно выглядеть так вend:
nest = [[{'Dict11': {1: 'A1', 2: 'A2', 3:'A3', 'id': 100},
'Dict12': {4: 'B1', 5: 'B2', 6:'B3', 'id': 100},
'Dict13': {7: 'C1', 8: 'C2', 9:'C3', 'id': 100}},
{ 'Dict21': {1: 'A1', 2: 'A2', 3:'A3', 'id': 100},
'Dict22': {4: 'B1', 5: 'B2', 6:'B3', 'id': 100},
'Dict23': {7: 'C1', 8: 'C2', 9:'C3', 'id': 100}},
{ 'Dict31': {1: 'A1', 2: 'A2', 3:'A3', 'id': 100},
'Dict32': {4: 'B1', 5: 'B2', 6:'B3', 'id': 100},
'Dict33': {7: 'C1', 8: 'C2', 9:'C3', 'id': 100}}],
[{ 'Dict11': {1: 'A1', 2: 'A2', 3:'A3', 'id': 200},
'Dict12': {4: 'B1', 5: 'B2', 6:'B3', 'id': 200},
'Dict13': {7: 'C1', 8: 'C2', 9:'C3', 'id': 200}},
{ 'Dict21': {1: 'A1', 2: 'A2', 3:'A3', 'id': 200},
'Dict22': {4: 'B1', 5: 'B2', 6:'B3', 'id': 200},
'Dict23': {7: 'C1', 8: 'C2', 9:'C3', 'id': 200}},
{ 'Dict31': {1: 'A1', 2: 'A2', 3:'A3', 'id': 200},
'Dict32': {4: 'B1', 5: 'B2', 6:'B3', 'id': 200},
'Dict33': {7: 'C1', 8: 'C2', 9:'C3', 'id': 200}}],
[{ 'Dict11': {1: 'A1', 2: 'A2', 3:'A3', 'id': 300},
'Dict12': {4: 'B1', 5: 'B2', 6:'B3', 'id': 300},
'Dict13': {7: 'C1', 8: 'C2', 9:'C3', 'id': 300}},
{ 'Dict21': {1: 'A1', 2: 'A2', 3:'A3', 'id': 300},
'Dict22': {4: 'B1', 5: 'B2', 6:'B3', 'id': 300},
'Dict23': {7: 'C1', 8: 'C2', 9:'C3', 'id': 300}},
{ 'Dict31': {1: 'A1', 2: 'A2', 3:'A3', 'id': 300},
'Dict32': {4: 'B1', 5: 'B2', 6:'B3', 'id': 300},
'Dict33': {7: 'C1', 8: 'C2', 9:'C3', 'id': 300}}]]
Я пытался
for sublist in nest:
sublist.append(val)
, но это явно не сработало так, как я хотел.
Как добавить значения из второго списка ввложенные словари вложенных списков? Спасибо!