Python 带增量的生成器

Python generator with increment

我有一个循环:

total = 0
for s in sums:
    total += s[0]

其中 sums 是数据库中的对象列表,由 Django 检索:

sums = Source_types.objects.values_list('source_sum')

我想将此代码移到单行生成器中。

使用 sum() function with a generator expression:

total = sum(s[0] for s in sums)

但是,Django ORM 可用于告诉 数据库 在此处进行求和,使用 aggregation:

from django.db.models import Sum

total = Source_types.objects.aggregate(Sum('source_sum'))