Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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 如何在pymongo中应用聚合_Python_Mongodb_Pymongo - Fatal编程技术网

Python 如何在pymongo中应用聚合

Python 如何在pymongo中应用聚合,python,mongodb,pymongo,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(p

通过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光标对象。有什么想法吗。谢谢

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

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

l_data = list(data)
pprint(l_data)

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

list(cursor)

应该会给您一个项目列表。

另一个更新。。我尝试打印'pprint(data.next()),它打印了第一个团队名称。这意味着在遍历游标对象之后,我可能能够获得所有的团队名称。有没有办法避免游标对象。嘿,安德烈,我列表中的一个元素如下:{u'team'u-id':{u'team'u-code':7,u'team'id':2,u'team'u-name':u'Aston-Villa'}}`如何获取单个键的值。element.get('id')或element['id']