""" [1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1], [1, 5, 10, 10, 5, 1] """ n = int(input("输入2-15")) sList = [] print([1]) print([1,1]) a = [1,1] sList=[[1],[1,1]] #从第三行开始 , for i in range(3): for i in range(3,n+1): # #每次都设置为空列表 b = [] #循环把数字添加到列表中, 添加的数字就是上一行的前两个数字和 for j in range(i-2): b.append(a[j] + a[j+1]) #最终结果 ,在左右两边各拼接一个1 a = [1] + b + [1] #[1,2,1] print(a) sList.append(a) for i in range(len(sList)): xList = sList[i] #[1, 2, 1] print(((n-i)*5)//2*" ",end="") #显示每行数字前面的空格 空格越来越少 for j in range(len(xList)): if len(str(xList[j])) >= 2: #如果数字是两位数,那么数字和数字后面的空格一共五位 print("{:<5d}".format(xList[j]),end="") else: print(xList[j],end=4 * " ") print("")