概述
近日,学习python生成器的过程中遇到一些小问题。 解释器Python3.7.1
本人参照廖雪峰的博客学习,在学到生成器时,课后练习是生成杨辉三角形,网上找到一个思路不错的代码,代码如下:
# -*- coding: utf-8 -*-
def triangles():
a = [1]
while True:
yield a
a.append(0)
a = [a[i-1]+a[i] for i in range(len(a))]
# 期待输出:
# [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]
n = 0
results = []
for t in triangles():
print(t)
results.append(t)
n = n + 1
if n == 10:
break
print(results)
if results == [
[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
最后
以上就是深情帅哥为你收集整理的杨辉三角形使用python生成器实现的全部内容,希望文章能够帮你解决杨辉三角形使用python生成器实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复