杨辉三角python

题目如图,用Python写杨辉三角的代码,不知道哪里错了,有大神可以帮忙看看吗?

img

img

img


#!/usr/bin/python
# -*- coding: utf-8 -*-

def printYanghui(n):
    L = [[1],[1,1]]
    #打印前两行
    print(1)
    print(1,1)
    #数组下标从0开始,从第3行到n行,下标2到n-1
    for i in range(2,n):
        #下标为i的行有i+1个数,初值赋值为1,n外层循环还要用,不要用于循环修改n的值
        l=[1 for j in range(i+1)]
        L.append(l)
        #杨辉三角第一个数和最后一个数等于1,其他的数等于上一行两个数相加
        for k in range(1,i):
            L[i][k] = L[i-1][k-1] + L[i-1][k]
        #打印这一行的所有数
        for j in range(i+1):
            print(L[i][j],end=' ')
        #打印换行
        print()

n=int(input())
printYanghui(n)