其他分享
首页 > 其他分享> > 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,函数会返回一个可迭代对象。

标签:__,对象,max,self,yield,def,iterable
来源: https://www.cnblogs.com/zxz646/p/16212035.html