Discuss / Python / 练习

练习

Topic source

ssaltt

#1 Created at ... [Delete] [Delete and Lock User]
def triangles():
    p = [1]
    while True:
        yield p
        p = [1] + [p[i] + p[i+1] for i in range(len(p)-1)] + [1]
    n = 0
    for t in triangles():
        print(t)
        n = n + 1
        if n == 10:
            break

望君佳

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

厉害,简洁的代码,向你学习,附上我的代码,以作记录。

# -*- coding:utf-8 -*-
def triangles()
    n,i = 1,0
    L = [0,1,0]
    yield L[1:-1]
     
    while True:
        former_list = L.copy()  #将列表复制
        length = len(former_list)
        for i in range(length-1):
            L[i+1] = former_list[i] + former_list[i+1]
        L.append(0)
        yield L[1:-1]


  • 1

Reply