Java教程

iterable对象和yield

本文主要是介绍iterable对象和yield,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

对象包含__iter__ 方法就代表这个对象是可迭代对象,通过next()不断返回下一个数。

class Fab(object): 
 
    def __init__(self, max): 
        self.max = max 
        self.n, self.a, self.b = 0, 0, 1 
 
    def __iter__(self): 
        return self 
 
    def next(self): 
        if self.n < self.max: 
            r = self.b 
            self.a, self.b = self.b, self.a + self.b 
            self.n = self.n + 1 
            return r 
        raise StopIteration()

yield

yield可以把一个函数变成一个 generator,函数会返回一个可迭代对象。

这篇关于iterable对象和yield的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!