из базы данных я получил результат в формате:
result = ([('A', 210L), ('B', 1L), ('C', 269L)], 3)
Мне нужно изменить его в Python на:
[{'description':'A','sum':210},{'description':'B','sum':1},{'description':'C','sum':269}]
Я пробовал разные варианты, но не получил то, что мне нужно ..
rows = len(result[0])
description_sum = {}
all_descriptions_sums = []
for i in range(rows):
description_sum['description'] = result[0][i][0]
description_sum['sum'] = int(result[0][i][1])
all_descriptions_sums.append(description_sum)
return all_descriptions_sums
В результате:
[{'description':'C','sum':269},{'description':'C','sum':269},{'description':'C','sum':269}]
Таким образом, на шаге all_descriptions_sums.append(description_sum)
словарь не только добавляется в список, но и переписывает предыдущее значение.
Большое спасибо за помощь!