思路分析:
将每行的数字放到一个空的列表num[]里面,并每行打印,然后再用num[]来存储上一行的数字,以便当前行进行计算
还有一点需要注意的就是:在每行计算并打印后,需要将当前行的数字作为下一行的上一行,先将nums清空,再把放进去存储。同样的,每行都对空的num[]进行操作,那么肯定num[]也是需要每行计算之后进行清空操作的
代码实现:
n = int(input())
num = [] #当前行的数字
nums = [] #上一行的数
for i in range(n):
for j in range(i+1):
if j == 0 or ji: #每行第一个和最后一个为1固定不变
num.append(1)
else:
num.append(nums[j]+nums[j-1]) #最开始我卡在这,不理解为啥0行1 行的情况,最后发现0行和1行都属于上面j0和j==i的类型
[print(a,end=’ ') for a in num]
print()
nums = []
[nums.append(a) for a in num]
num = []