张祎

导航

【简洁之美】裴波那切数列生成器 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]

  

posted on 2016-08-14 20:35  张祎  阅读(433)  评论(0编辑  收藏  举报