<p>更新文档和<a href="https://docs.mongodb.org/manual/reference/operator/update/set/" rel="nofollow noreferrer">^{<cd1>}</a>时间的最佳方法是使用<a href="https://docs.python.org/3.5/library/datetime.html#module-datetime" rel="nofollow noreferrer">datetime</a>模块,因为<code>createdDate</code>是Python中的<a href="https://docs.python.org/3.5/library/datetime.html#datetime-objects" rel="nofollow noreferrer">datetime object</a>,因此可以使用<code>datetime</code>实例属性<a href="https://docs.python.org/3.5/library/datetime.html#datetime.datetime.day" rel="nofollow noreferrer">^{<cd5>}</a>、<a href="https://docs.python.org/3.5/library/datetime.html#datetime.datetime.year" rel="nofollow noreferrer">^{<cd6>}</a>和{a6}。在</p>
<pre><code>from datetime import datetime
from pymongo import MongoClient
client = MongoClient()
db = client.test
collection = db.collection
bulkOp = collection.initialize_ordered_bulk_op()
count = 0
for doc in collection.find():
year = doc['createdDate'].year
month = doc['createdDate'].month
day = doc['createdDate'].day
new_date = datetime(year, month, day)
bulkOp.find({'_id': doc['_id']}).update({'$set': {'createdDate': new_date}})
count = count + 1
if count == 125:
bulkOp.execute()
bulkOp = collection.initialize_ordered_bulk_op()
if count % 125 != 0:
bulkOp.execute()
</code></pre>