首页 > 解决方案 > 来自 Django QuerySet 的嵌套字典

问题描述

我被困在从 Django QuerySet 创建嵌套字典我的代码是

qr_dict = [{'id':i.pop('ID'), 'data':[{i['ACCOUNT_NAME']}] } for i in query_result]

我从上面列出的代码中得到了结果:

[{'id': 123, 'data': [{'MUHAMMAD ADNAN'}]}, {'id': 123, 'data': [{'NAVEED AHMED SUNNY'}]}]

我需要类似以下字典列表的结果:

[{'id': 123, 'data': [{'MUHAMMAD ADNAN'},{'NAVEED AHMED SUNNY'}]}]

我在做什么错了,请提前帮助谢谢。

标签: pythondjango

解决方案


使用dict.setdefault

前任:

result = {}
for i in query_result:
    result.setdefault(i['ID'], []).append(i['ACCOUNT_NAME'])

推荐阅读