Python MongoDB通过集合搜索密钥的更好方法

Python MongoDB通过集合搜索密钥的更好方法,python,mongodb,Python,Mongodb,我正在尝试查看我的字符串是否位于整个集合中的特定键中 收集示例: _id: "XXX" hwid: "XX1" _id: "XXX" hwid: "XX2" _id; "XXX" hwid: "XX3" 我想搜索集合中的所有hwid键,看看我的字符串是否在其中一个键中,然后返回true/false。我认为使用for循环是一种很好的方法,但每次它都返回false clien

我正在尝试查看我的
字符串
是否位于整个集合中的特定
键中

收集示例:

_id: "XXX"
hwid: "XX1"

_id: "XXX"
hwid: "XX2"

_id; "XXX"
hwid: "XX3"
我想搜索集合中的所有
hwid
键,看看我的
字符串是否在其中一个键中,然后返回true/false。我认为使用for循环是一种很好的方法,但每次它都返回false

client = pymongo.MongoClient("connection works")
db = client.monza
collection = db.whitelist

def search_hwid(hwid):
    for x in collection.find({}, {"hwid"}):
        if hwid == x['hwid']:
            whitelisted = True
            return whitelisted
            break
        else:
            whitelisted = False
            return whitelisted
它每次都返回
False
,即使我100%确定
hwid
在我的集合中

//please see outcomes of find option with various options, for your query you need to find directly
//without using {} as first parameter
> db.test3.find();
{ "_id" : 1, "hwid" : "XX1" }
{ "_id" : 2, "hwid" : "XX2" }
{ "_id" : 3, "hwid" : "XX3" }
> db.test3.find({},{hwid:"XX2"});
{ "_id" : 1, "hwid" : "XX1" }
{ "_id" : 2, "hwid" : "XX2" }
{ "_id" : 3, "hwid" : "XX3" }
> db.test3.find({hwid:"XX2"});
{ "_id" : 2, "hwid" : "XX2" }
> db.test3.find({hwid:"XX3"});
{ "_id" : 3, "hwid" : "XX3" }