1. 使用迭代器的方式完成斐波那契

题解:1. 使用iter方法; 2. 使用next方法

2. 代码

class Fibonacci(object):
    def __init__(self, index):
        self.index = index
        self.current_number = 0
        self.a = 0
        self.b = 1

    def __iter__(self):
        return self

    def __next__(self):
        if self.current_number < self.index:
            res = self.a
            self.a, self.b = self.b, self.a + self.b
            self.current_number += 1
            return res
        else:
            raise StopIteration


fibo = Fibonacci(10)
for num in fibo:
    print(num)