Python斐波数列的迭代器
时间: 2024-03-28 16:35:49 浏览: 105
Python中的斐波那契数列是一个经典的数学问题,可以使用迭代器来生成。下面是一个简单的示例代码:
```python
class FibonacciIterator:
def __init__(self, n):
self.n = n
self.current = 0
self.next = 1
self.count = 0
def __iter__(self):
return self
def __next__(self):
if self.count < self.n:
result = self.current
self.current, self.next = self.next, self.current + self.next
self.count += 1
return result
else:
raise StopIteration
# 使用迭代器生成斐波那契数列
fibonacci = FibonacciIterator(10)
for num in fibonacci:
print(num)
```
在上面的代码中,我们定义了一个名为`FibonacciIterator`的类,它实现了迭代器的两个方法`__iter__`和`__next__`。`__iter__`方法返回迭代器本身,而`__next__`方法用于生成下一个斐波那契数并返回。
使用这个迭代器,我们可以通过创建一个`FibonacciIterator`对象,并使用`for`循环来遍历生成的斐波那契数列。
阅读全文