我有一个 Django 查询集列表,我想将它们组合成一个查询。合并两个 Queryset 的标准方法是执行操作:newQ = Q1 | Q2
,我想对列表的所有元素执行该操作以形成单个 Queryset 对象。
使用 for 循环非常简单,例如:
for qs in qs_list:
if final_qs not in locals():
final_qs = qs
else:
final_qs = final_qs | qs
鉴于 python 的奇妙之处,感觉好像可能有某种内置函数可以为您执行此操作。然而,我浏览了这个itertools
库,并没有发现任何东西可以简化这个操作。
所以我的问题是,是否有更 Pythonic 的方式来执行上述操作?