#!/usr/bin/env python
# -*- coding:utf-8 -*-
#自定义迭代器 需要 重写 __iter__()和__next__() 两个魔法方法
class Fibs:
def __init__(self,value): #value 设置最大值
self.value=value
self.a=0
self.b=1
def __iter__(self):
return self
def __next__(self):
self.a=self.b
self.b=self.a+self.b
if self.a <self.value:
return self.a
else:
raise StopIteration
fi = Fibs(30); #小于30的
for i in fi:
print(i)