stopiteration

    16熱度

    2回答

    我有一臺發電機在這裏我想一個初始值和最終值添加到實際的內容,它是這樣的: # any generic queue where i would like to get something from q = Queue() def gen(header='something', footer='anything'): # initial value header yield

    7熱度

    4回答

    有幾種方法,打破了幾個嵌套循環 它們是: 1)利用突破繼續 for x in xrange(10): for y in xrange(10): print x*y if x*y > 50: break else: continue # only executed if break was not used break

    3熱度

    4回答

    當迭代器耗盡時,最後一次從迭代器返回某些東西的好方法是什麼?我使用的一個標誌,但是這是比較難看: class Example(): def __iter__(self): self.lst = [1,2,3] self.stop = False # <-- ugly return self def next(self):

    27熱度

    2回答

    我使用發電機來執行列表中搜索喜歡這個簡單的例子: >>> a = [1,2,3,4] >>> (i for i, v in enumerate(a) if v == 4).next() 3 (只是幀的例子了一下,我使用很長的列表相比,上面的一個,並且條目是更復雜一點比int。我這樣做,這樣我每次搜索它們) 所以整個列表不會被遍歷現在,如果我反而改變,要i == 666,它會返回一個Stop