使用单个列表的覆盖,切片打印
n=9 row=[1]*n ##一次性开辟全部空间 for i in range(n): old=1 for j in range(i//2): va=old+row[j+1] old=row[j+1] ##row[j+1]将被覆盖,通过变量old先将row[j+1]保留 row[j+1]=va if i !=2*(j+1): row[i-(j+1)]=row[j+1] else: print(‘***‘) print(row[:i+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]
杨辉三角、封装结构和集合操作(14)——杨辉三角单行覆盖解法
原文:https://www.cnblogs.com/omgasw/p/11772104.html