迭代器-斐波那契数列

你离开我真会死。 提交于 2019-12-06 14:58:06

使用迭代器实现斐波那契数列

 1 class Finacci(object):
 2     def __init__(self,num):
 3         self.num = num
 4         self.a = 1
 5         self.b = 1
 6         self.current_index=0
 7     def __iter__(self):  #定义迭代器
 8         return self
 9     def __next__(self):
10         if self.current_index<self.num:
11             data = self.a
12             self.a=self.b
13             self.b=self.a+self.b
14             self.current_index+=1
15             return data
16         else:
17             raise StopIteration
18 
19 if __name__ == '__main__':
20     fib = Finacci(5)
21     # val = next(fib)
22     for value in fib:
23         print(value)

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!