쿼리 세트를 반복하고 모든 항목에 대해 사전을 만든 다음 모든 사전을 목록에 추가하려고합니다. 사전이 있는지 확인한 후 값이 업데이트되는지 확인해야합니다. 내 문제는 금액 값으로 목록을 정렬하는 방법을 모른다는 것입니다.사전의 목록을 작성하고 값으로 사전을 정렬하는 올바른 방법
아마도 이것이 딕트를 만드는 가장 좋은 방법이 아닐 수도 있습니다. 여기
내 코드입니다 :#Create list
my_list_of_dicts = []
#Create dict object
my_dict = {}
#Find every user in query_set
for item in query_set: #query_set is a list of objects from a Django query: <QuerySet [<User: name123>, <User: name123>, <User: name456>, <User: name789>,]>
if item.name in my_dict:
#Update object
my_dict[item.name]['amount'] += item.amount
else:
#Create object
my_dict[itemrecruiter] = {'amount': item.amount, 'not-important' item.foo}
#Add dict to list
recruiters.append(my_dict)
print(my_list_of_dicts)
>>> [{"name123": {"amount": 8, 'not-important': 'foo123'}, "name456": {"amount": 3, 'not-important': 'foo456'}, "name789": {"amount": 20, 'not-important': 'foo789'}}]
처럼 사전을 통해 항상 루프는 어떤 걸이다 달성하려고? 또는'{ "name123": { "amount": 8}}' –
의 목록을 원한다면 query_set 샘플을 제공하십시오. 문제가 더 잘 설명됩니다. –
내가 잘못했을 수도 있습니다! 모든 이름의 목록을 갖고 그 이름과 관련된 금액을 갖고 싶습니다. 나는 이것을 더 나은 것으로 만드는 제안에 개방되어 있습니다! –