Преобразование двух сложных словарных списков в словарь
Предположим, у меня есть два словаря, список которых приведен ниже:
all=[]
lis1={
'code':'matata',
'commandes':[
{
'date':'12-10-22',
'content':[
{
'article':'Article1',
'designation':'Designe1',
'quantity':5
}
]
}
]
}
lis2={
'code':'fropm',
'commandes':[
{
'date':'04-08-21',
'content':[
{
'article':'Article2',
'designation':'Designe2',
'quantity':3
}
]
}
]
}
Теперь я добавляю на уровне списка два моих словаря
all.append(list1)
all.append(liste2)
для замены [..]
в {..}
для одного списка мы можем сделать all[0]
.
Но после добавления двух списков и последующего выполнения all[0]
мы имеем только первый список, чьи [..]
в квадратных скобках заменены на {..}
.
Я хотел бы иметь такое представление { {...}, {...} }
Возможно ли это?
Вам необходимо уточнить, чего вы пытаетесь достичь. lis1
- это диктант, а не список. lis1['commandes']
- это список, содержащий один dict, но, предположительно, в общем случае их может быть больше. Каждый из них имеет ключ "date"
и еще один ключ "content"
, который снова является списком диктов ....
Произвольным примером может быть добавление commandes
из lis2
к тем, что в lis1
:
lis1['commandes'].extend( lis2['commandes'] )
, который использует метод list .extend()
для объединения двух списков. Это должно дать
{
'code':'matata',
'commandes':[
{
'date':'12-10-22',
'content':[
{
'article':'Article1',
'designation':'Designe1',
'quantity':5
}
]
},
{
'date':'04-08-21',
'content':[
{
'article':'Article2',
'designation':'Designe2',
'quantity':3
}
]
}
]
}
"Углубление" - это просто вопрос предоставления индексов массива и ключей диктанта в зависимости от ситуации. например,
lis1['commandes'][0]['content'][0]['quantity']
будет 5.