所以我試圖在Pymongo中使用$ in操作符,我想用一堆MongoID進行搜索。
首先,我有這個疑問找到MongoIDs數組:
findUsers = db.users.find_one({'_id':user_id},{'_id':0, 'f':1})
如果我打印它看起來像這樣的findUsers['f']
:
[ObjectId('53b2dc0b24c4310292e6def5'), ObjectId('53b6dbb654a7820416a12767')]
這些對象ID是用戶ID和我想要的要做的是使用這個ObjectID數組查找用戶集合中的所有用戶。所以我的想法是這樣的:
foundUsers = db.users.find({'_id':{'$in':findUsers['f']}})
然而,當我打印foundUsers的結果是這樣的:
<pymongo.cursor.Cursor object at 0x10d972c50>
這是不是當我打印查詢出來:(
我通常得到我在做什麼錯在這裏?
非常感謝。
也只爲你參考erence,我在mongo shell中查詢過它,它按預期工作:
db.users.find({_id: {$in:[ObjectId('53b2dc0b24c4310292e6def5'), ObjectId('53b6dbb654a7820416a12767')]}})
非常感謝您的信息!現在我明白了 – jonprasetyo
要將光標一返回就轉換爲Python列表,請將查詢包裝在'list' ...'users = list(db。users.find())' – MFB