用户工具

站点工具


hacks:infinite-list

Python 无限元素列表

今天同学问到Python怎么实现无限元素列表,使用Yield就可以实现无限元素列表。

下面2段代码通过Python Yield 生成器实现了简单的无限元素列表。

递增无限列表

def increment():
  i = 0
  while True:
    yield i
    i += 1
 
for j in increment():
  print i
  if (j > 10) : break

斐波那契无限列表

def fibonacci():
  i = j = 1
  while True:
    result, i, j = i, j, i + j
    yield result
 
for k in fibonacci():
  print k
  if (k > 100) : break

参考

hacks/infinite-list.txt · 最后更改: 2012/02/01 14:16 (外部编辑)