您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python实现杨辉三角思路

5b51 2022/1/14 8:16:50 python 字数 1949 阅读 332 来源 www.jb51.cc/python

程序输出需要实现如下效果: [1] [1,1] [1,2,3,1] ...... 方法:迭代,生成器 deftriangles()

概述

程序输出需要实现如下效果

[1]

[1,1]

[1,2,3,1]

......

方法:迭代,生成

def triangles()

L = [1]

while True:

yiled L

L =[1] + [L[i] + L[I+1] for i in range(len(L)-1)] + [1]

n = 0

for t in triangles():

print(t)

n += 1

if n == 10:

break

实现逻辑:

1.由于yield为生成器中断输出,所以有了第一个输出为[1]

2.继续while下面的yield后的循环,此时list长度为1,将其代入L中的len(L),得出[L[i]+L[i+1] for i in range(1-1)]得出为空值,所以yield L输出为[1,1]

3.此时len(L)值为2,代入得出[L[i]+L[i+1] for i in range(2-1)]为[L[i]+L[i+1] for i in range(1)],i能取值为0,代入后为[L[0]+L[1]],而L[0]和L[1]的值均为1(有上面结果可知),所以输出结果为[1,1]

4.由第三条可知此时len(L)值为3,代入得出[L[i]+L[i+1] for i in range(2)],i取值为0和1,通过循环输出有两个值,均为3,分别由[L[0]+L[1]],[L[1]+L[2]]

以此类推即可

总结

以上是编程之家为你收集整理的python实现杨辉三角思路全部内容,希望文章能够帮你解决python实现杨辉三角思路所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶