相思资源网 Design By www.200059.com
杨辉三角杨辉 定义如下:
1
/ 1 1
/ \ / 1 2 1
/ \ / \ / 1 3 3 1
/ \ / \ / \ / 1 4 6 4 1
/ \ / \ / \ / \ / 1 5 10 10 5 1
把每一行看做一个list,试写一个generator,不断输出下一行的list:
def triangles():
L = [1]
while True:
yield L
M=L[:]#复制一个list,这样才不会影响到原有的list。不然results里的每个列表的末尾会为0.
M.append(0)
L = [M[i-1]+M[i] for i in range(len(M))]
n =0
results = []
for t in triangles():
print(t)
results.append(t)
print(results)
n = n +1
if n == 10:
break
ps:如何实现心
def printlove(start,length,midnumber=0,flag=31):
for i in range(31):
if i<start or i>start+length-1 and i<15-(midnumber-1)/2 or i>15+(midnumber-1)/2 and i<31-start-length or i> 30-start or i==flag:
print " ",
else:
print "*",
print ""
for i in range(16):
if i ==0:
printlove(4,3)
elif i==1:
printlove(1,9)
elif i>=2 and i<=5:
printlove(0,i+10)
elif i==6:
printlove(1,7,7,15)
elif i>=7 and i<=8:
printlove(i-5,6,5-(i-7)*2)
elif i==9:
printlove(5,6,1)
elif i==10:
printlove(8,6,1)
elif i==15:
printlove(15,1,1)
else:
printlove(i-1,16-i,1)
实现的效果如下:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
python,杨辉三角形
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无使用python生成杨辉三角形的示例代码的评论...
