在廖雪峰的博客上学习Python的基础,看到生成器章节的时候,有一道练习题要写杨辉三角,就写了一下,可惜没用生成器实现,先记录一下,后续再修改完善;
目前对于Python的理解还不深刻,有些方法写得不够简略,先备注一下,后续再改进。
=================================================
def triangles(num):
L1 = [1,1]
L2 = [1,1]
#打印第一行
print([1])
#打印第二行,后面进入每一行的计算
print(L1)
for t in range(2,num):
x=1
L1.append(1)
L2.append(1)
while x < t:
L2[x] = L1[x] + L1[x-1]
x+=1
#为了不让计算结果影响到当前行的数据,把当前行重新保存一份,这里不可以直接用L1=L2,后面看看还有没有其他方法简化
for y in range(1,t):
L1[y] = L2[y]
print(L1)
#输出1-9行的杨辉三角验证一下是否正确
triangles(9)
=================================================