簡體   English   中英

帶 pymongo 的發電機 function

[英]Generator function with pymongo

我正在嘗試制作一個生成器 function ,它在每次調用時都會產生一個項目,但是我一直得到相同的項目。 這是我的代碼:

  1 from pymongo import Connection
  2 
  3 connection = Connection()
  4 db = connection.store
  5 collection = db.products
  6 
  7 def test():
  8         global collection #using a global variable just for the test.
  9         items = collection.find()
  10        for item in items:
  11                 yield item['description']
  12        return

首先,刪除return ,沒有必要。

您的問題不在於test()而是您如何稱呼它。 不要只調用test()

執行以下操作:

for item in test():
    print item

而且您一次只能得到一件。 這基本上是:

from exceptions import StopIteration
it = iter(test())

while True:
    try:
        item = it.next()
    except StopIteration:
        break
    print item

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM