【簡潔之美】裴波那切數列生成器 python

裴波那切數列能夠用生成器較好的去生成,直接上代碼:python

# 1 控制最大數字版本
def fib(max):
    x,y = 0,1
    while y < max:
        yield x
        x,y = y,x+y
print [x for x in fib(100)]   #  輸出[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
# 2 控制迭代個數版本
def fib(count):
	x,y,n = 0,1,1
	while n < count:
		yield x
		x,y = y,x+y
		n +=1
print [x for x in fib(10)]   #[0, 1, 1, 2, 3, 5, 8, 13, 21]
相關文章
相關標籤/搜索