Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用查询集中的列表值高效地创建字典_Python_Django_Performance_Loops_Dictionary - Fatal编程技术网

Python 使用查询集中的列表值高效地创建字典

Python 使用查询集中的列表值高效地创建字典,python,django,performance,loops,dictionary,Python,Django,Performance,Loops,Dictionary,给定从queryset返回的一组对象,如何构造一个字典,其中一个对象属性作为键,对象本身作为值 当前代码: questions = Questions.objects.all() parent_question = defaultdict(list) section_question = defaultdict(list) for question in questions: parent_question[question.parent_id].append(question)

给定从queryset返回的一组对象,如何构造一个字典,其中一个对象属性作为键,对象本身作为值

当前代码:

questions = Questions.objects.all()
parent_question = defaultdict(list)
section_question = defaultdict(list)

for question in questions:
    parent_question[question.parent_id].append(question)
    section_question[question.section_id].append(question)

我可以通过移除循环来提高效率吗?用地图什么的?或者修改查询?或者我必须接受这种情况吗?

您可以尝试使用
Blog.objects.values('id','name')
检查:您可以添加数据概述吗?