杨辉三角最本质的特征是,它的两条斜边都是由数字1组成的,而其余的数则是等于它肩上的两个数之和。
def yangHui(n):
result = [[1],[1,1]] #初始化杨辉三角
line = [1,1] #杨辉三角的特征,斜边都是数字1
for i in range(2,n):
r =[]
for j in range(len(line)-1): #line 是有两个“1”,长度是2,所以-1
r.append(line[j]+line[j+1]) #两肩之和放到line列表
line = [1]+ r + [1]
result.append(line)
return result
##打印结果
def output(result):
for i in result:
print(i)
n = int(input()) #输入你想打印杨辉三角的前几行
output(yangHui(n))
运行结果如下:
如果你只想打印第n行,把output()改了就可以了。如下:
def output(result):
print(result[n-1])
运行结果如下: