n=int(input(" 请输入数字: ")) intlist=[[0 for i in range(n)] for j in range(n)] #列表推导式,生成一个n行n列的二维列表 for i in range(n): #遍历列表,如果是周边元素,或者每行的第一个元素为1 for j in range(i+1): if i==j or j==0: intlist[i][j]=1 else: intlist[i][j]=intlist[i-1][j-1]+intlist[i-1][j] #其余元素是上一行相邻两个元素之和 for i in range(n): #控制打印列表,使其以等腰三角形的形状打印 for k in range(n-i+5): print(" ",end='') for j in range(i+1): print("{:<-6d}".format(intlist[i][j]),end='') print()