如何在PyMongo中获取_id名称列表

时间:2014-11-01 13:46:55

标签: python mongodb python-2.7 pymongo

我想创建一个_id名称列表,例如使用PyMongo的['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']出于此查询:

> db.users.find({},{ "_id":1} ).limit(10)
{ "_id" : "0" }
{ "_id" : "1" }
{ "_id" : "2" }
{ "_id" : "3" }
{ "_id" : "4" }
{ "_id" : "5" }
{ "_id" : "6" }
{ "_id" : "7" }
{ "_id" : "8" }
{ "_id" : "9" }

但是,以下代码不会产生任何结果:

from pymongo import MongoClient

if __name__ == '__main__':

    db = MongoClient()
    sDB = db.test.users
    for u in list(sDB.users.find({}, {"_id": 1}).limit(10)):
        print "!!!", u

为什么以上列表为空?

1 个答案:

答案 0 :(得分:2)

您已经两次引用users,因此它实际上是在查看users.users集合。

这应该有用(您也不需要list调用):

db = MongoClient()
users = db.test.users
for u in users.find({}, {"_id": 1}).limit(10):
    print "!!!", u