需要批量操作時候,節省網路連線互動次數,可以使用 bulk_write。
設定ordered=False,因為批量操作中沒有互相依賴關係,如果有前後順序的互相依賴,需要設定為True。
bed_type_match_failed_list = [{'_id': b, 'update_time': datetime.datetime.now()} for b in self.bed_type_match_failed_set] to_be_request = [UpdateOne({'_id':b['_id']},{'$set':b},upsert=True) for b in bed_type_match_failed_list] self.col.bulk_write(to_be_request,ordered=False) self.bed_type_match_failed_set.clear()