pymong中带修改的游标迭代

2024-10-03 13:18:48 发布

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

以下是我的片段:

mongo_db = pymongo.MongoClient('mongodb://p2buser:p2bpass@192.168.1.102:27018')['YYPei']
brands = mongo_db.fqBrands.find()
count= brands.count()
i = 0
for brand in brands:
    i += 1
    mongo_db.fqBrands.update({"_id": brand['_id']},{'$set': {'enabled': 1})
print count
print i

fqBrands集合中有1603个元素,计数等于它。 而i应该是1603 但结果显示i值1687

所以这让我有点困惑,我怎么才能确定它出了什么问题


Tags: iddbmongomongodbcountfindprintmongoclient
1条回答
网友
1楼 · 发布于 2024-10-03 13:18:48

我不知道“I”值不同的原因。
但有一种更好的方法可以更新所有文档:

mongo_db = pymongo.MongoClient('mongodb://p2buser:p2bpass@192.168.1.102:27018')['YYPei']
brands = mongo_db.fqBrands.find()

count_before= brands.count()
brands.update({},{'$set': {'enabled': 1}, {multi: true})
count_after= brands.count()

print count_before
print count_after

相关问题 更多 >