斐波那契数列,也称为黄金分割数列,这个数列从第3项开始,每一项都等于前面两项之和。
迭代器:可以记住遍历位置的对象,从集合的第一个元素开始访问,直到所有的元素被访问完结束,每次只能向前不能后退。
python(使用生成器函数来实现):
import sys
def function(n) : #生成器函数
a, b, counter = 0, 1, 0
while True:
if(counter > n):
return
yield a
a, b = b, a+b
counter += 1
f = function(10) #f是一个迭代器,由生成器返回生成(调用一个生成器函数,会返回一个迭代器对象)
while True:
try:
print(next(f), end= " ")
except StopIteration:
sys.exit()
当在函数中使用yield语句时,函数的执行将会暂停,并将yield后面的表达式作为当前迭代的值返回。
代码结果: