杨辉三角形大家都知道,那么在这里就不再介绍了,大家肯定都用C/C++实现过杨辉三角形,是把数据存放在了一个二维数组里,那么如何让用Python来实现杨辉三角形呢?
我查看了网上的很多方法,都很麻烦,有的还用到了生成器,那我们来看看简单的方法吧!
其实,在Python中,二维数组就可以用列表的列表来表示。在这里,我们就把数据存放在列表的列表中。
在杨辉三角形中,有一个很大的规律:
就是每一行的第一个和最后一个都是1,那中间的数据是怎么生成的呢?
中间的数据其实就是一个公式:(假设n表示行,m表示列)
list1[n][m] = list1[n-1][m-1] + list1[n-1][m]
下来一起看看代码吧:
n=int(input())
list1=[]
for n in range(n):
row=[1] # 第一行第一列为1
list1.append(row)
if n==0:
for num in row: # 这里主要是为输出做的格式处理
print(num,end=" ")
print()
continue
for m in range(1,n):
row.append(list1[n-1][m-1]+list1[n-1][m])
row.append(1)
for num in row:
print(num, end=" ")
print()