码迷,mamicode.com
首页 > 编程语言 > 详细

python生成器实现杨辉三角

时间:2016-07-20 17:51:35      阅读:308      评论:0      收藏:0      [点我收藏+]

标签:

 1 def triangels():
 2     """
 3     杨辉三角
 4     """
 5     lst = [1]
 6     n_count = 2 # 下一行列表长度
 7     while True:
 8         yield lst
 9         lst_n = list(range(0 ,n_count))                    
10         lst = [1] + [lst[i-1]+lst[i] for i,v in enumerate(lst_n) if i!=0 and i!=n_count-1] + [1]
11         n_count += 1

调用:

1  n = 0
2  while n < 10:
3      next(x)
4      n += 1

 

实现效果:

# [1]
# [1, 1]
# [1, 2, 1]
# [1, 3, 3, 1]
# [1, 4, 6, 4, 1]
# [1, 5, 10, 10, 5, 1]
# [1, 6, 15, 20, 15, 6, 1]
# [1, 7, 21, 35, 35, 21, 7, 1]
# [1, 8, 28, 56, 70, 56, 28, 8, 1]
# [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
# ...

 

python生成器实现杨辉三角

标签:

原文地址:http://www.cnblogs.com/seastar1989/p/5689063.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!