python编程:用生成器生成一个斐波拉契数组

现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。

import sys
 
def fibonacci(n): # 生成器函数 - 斐波那契
    a, b, counter = 0, 1, 0
    while True:
        if (counter > n): 
            return
        yield a
        a, b = b, a + b
        counter += 1
f = fibonacci(10) # f 是一个迭代器,由生成器返回生成
 
while True:
    try:
        print (next(f), end=" ")
    except StopIteration:
        sys.exit()

 

你可能感兴趣的:(python)