python实战实例:杨辉三角
题目描述
给出 n(1≤n≤20),输出杨辉三角的前 n 行。
输入输出样例
输入 #1复制
6
输出 #1复制
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
n=int(input()) a = [[0 for i in range(0, n + 1)] for j in range(0, n + 1)] a[1][1]=1 for i in range(2,n+1): for j in range(1,i+1): a[i][j]=a[i-1][j-1]+a[i-1][j] for i in range(1, n + 1): for j in range(1, i + 1): print(a[i][j], end = ' ') print('')a = [[0 for i in range(0, n + 1)] for j in range(0, n + 1)]:使用列表推导式来动态生成一个二维列表。内层列表
[0 for i in range(0, n + 1)]:这部分负责生成二维列表的“行”,创建一个包含 n+1 个0的一维列表,相当于初始化了一行。外层列表[... for j in range(0, n + 1)]:这部分负责生成二维列表的“列”,让内层的创建行操作执行 n+1 次,最终生成一个包含 n+1 行的二维列表。a[i][j]=a[i-1][j-1]+a[i-1][j]:给二维列表赋值。
一日不练就手生,加油啊
