如何将变量的值传递到mongo查询中?

2024-06-07 03:56:25 发布

您现在位置:Python中文网/ 问答频道 /正文

以下mongo查询正常工作: db.data.find({"data.id": "5" })

我想将参数列表的变量值传递给python程序中的查询:

import pymongo
from pymongo import MongoClient
client=MongoClient()
db=client.dhlab
data=db.data

for data in db.data.find({"data.id":'"' $id '"'}):
   print data

我为db.data.find({"data.id":id})尝试了以下操作,但没有成功: /"id/", '"'id'"', /"$id/"

我该怎么解决这个问题?在


Tags: fromimport程序clientid列表fordb
1条回答
网友
1楼 · 发布于 2024-06-07 03:56:25

你是这个意思吗?在

result = db.data.find({"data.id": {$in: [1,2,3,5]} })

for data in result:
    print(data) // will print all 'data' document whith that id

您可以用自己的值或变量替换[1,2,3,5]。 例如:

^{pr2}$

我们可以考虑这种情况(我们只想使用偶数):

list = []
numbers = range(1,100)
for number in numbers:
    if number % 2 == 0
        list.append(number)

result = db.data.find({"data.id": { $in: list } })

相关问题 更多 >