2013-04-02 2 views
0

Я искал по всему миру свою проблему, но вроде бы застрял, я пытаюсь использовать pymongo, чтобы перебирать огромную коллекцию на MongoDB, используя курсоры, однако это швы, что там это не реализация hasNext() в python, как JS.Как использовать pymongo для обработки огромных коллекций

Вот мой код:

cursor = news.find() 
while(cursor.hasNext()):  
    doc = cursor.next() 

ответ

1

Понял!

PyMongo не имеет hasNext(), вместо этого метода следующий() не возвращает None, если нет больше объектов, так что это трюк

Благодаря eitherway!

1

вы можете перейти в коллекцию с помощью для заявления

for record in cursor: 
    print record 

для ключевых слов на самом деле вызывает _ ИТЭР _() и следующий() для вас. http://docs.python.org/2/library/collections.html#collections.Iterator

Курсор объект в pymongo поставляется с этими 2 способами. https://github.com/mongodb/mongo-python-driver/blob/master/pymongo/cursor.py#L1010

Смежные вопросы