Как преобразовать список в json на основе одного и того же значения ключа в django
Как преобразовать список в json на основе одного и того же значения ключа в django
Мой список django (мой вопрос)
{'include_product_id[x_734652]': ['1'],
'product_name[x_734652]': ['Test_1'],
'product_qty[x_734652]': ['1'],
'product_price[x_734652]': ['10'],
'total_amount[x_734652]': ['10'],
'include_product_id[x_332559]': ['2'],
'product_name[x_332559]': ['Test_2'],
'product_qty[x_332559]': ['10'],
'product_price[x_332559]': ['10'],
'total_amount[x_332559]': ['100']}
Мне нужен такой результат
[{'include_product_id': 1,
'product_name': Test_1,
'product_qty': 1,
'product_price': 1,
'total_amount': 10,
},
{'include_product_id': 2,
'product_name': Test_2,
'product_qty': 10,
'product_price': 10,
'total_amount': 100,
}]
Итерация по элементам и чтение части x_<digits>
, чтобы знать, для какого диктанта она должна быть использована:
x = {}
for key, value in data.items():
x_id_index = key.rindex("[")
x_id = key[x_id_index+1:-1]
x_dict = x.setdefault(x_id, {})
x_dict[key[:x_id_index]] = value[0]
x_values = list(x.values())
print(x_values)
Вывод (красиво напечатано)
[
{
"include_product_id": "1",
"product_name": "Test_1",
"product_qty": "1",
"product_price": "10",
"total_amount": "10"
},
{
"include_product_id": "2",
"product_name": "Test_2",
"product_qty": "10",
"product_price": "10",
"total_amount": "100"
}
]