如何在pymongo中应用聚合

时间:2016-06-11 20:10:29

标签: python mongodb pymongo

通过MongoDb中的以下查询,我从整个数据中获取所有团队。

db.player_level_data.aggregate([{$group : {_id: {team_name : "$team_name"}}}]).toArray()

我需要通过pymongo在python中导入这个团队数组。我尝试了以下代码。

pipe = [
{'$group': {'_id': {'team_name' : "$team_name"}}}
]
data  = db.player_level_data.aggregate(pipeline=pipe)
pprint (data)

但是它打印了一个pymongo游标对象。对此有任何想法。感谢

2 个答案:

答案 0 :(得分:1)

我假设游标对象是generator,所以只需将其转换为列表并打印该列表:

pprint(list(data))

请注意,打印后数据应为空。因此,如果您需要继续处理该数据,请将list(data)保存到变量并与该变量进行交互:

l_data = list(data)
pprint(l_data)

答案 1 :(得分:1)

当然,这会返回一个游标对象。

list(cursor)

应该为您提供物品清单。