所以我有我的pymongo游标和非常简单的循环来获取总和。我需要获取这个价值,我对Mongo也很陌生,而且我的方法可能不是最佳做法。在列表理解中的Lambda表达式Python
cursor = db.reportsColl.aggregate([
{"$unwind": "$conditions"},
{"$group": {"_id": "$_id", "sum": { "$sum": 1}}}])
x = 0
for result in cursor:
x+= result['sum']
print(x)
我想在这里使用lambda表达式,但我觉得我有点失落。
total = [(lambda x: x+result['sum'])(x) for _ in cursor]
任何想法?
你的意思是这样'总= SUM(结果['sum']为游标结果)# – AChampion
@Champion肯定!我第一次做不到这一点......谢谢。 –
@AliceJarmusch对你在这里做的事情有些困惑...你不能修改你的查询并且让mongo做,而不是在Python中进行后处理?虽然,我不知道你是否想要获得团体的数量,或其他什么... –