Discuss / Python / 写了个普通的杨辉三角,有大佬帮忙看看咋改成用yield吗

写了个普通的杨辉三角,有大佬帮忙看看咋改成用yield吗

Topic source

长日将尽

#1 Created at ... [Delete] [Delete and Lock User]

# -*- coding: utf-8 -*-

def triangles(max):

    n=1

    v={}

    v[1,1]=1

    while n<max:

        n=n+1

        i=0

        while i<n:

            i=i+1

            if i==1:

                v[n,i]=1

            elif i<n:

                v[n,i]=v[n-1,i-1]+v[n-1,i]

            else:

                v[n,i]=1

    return v

print(triangles(10))

x=triangles(10)

for n in range(1,11):

    for i in range(1,n+1):

        if i==n:

            print(x[n,i])

        else:

            print(x[n,i],end=',')


  • 1

Reply