def triangles(num_lines):
line = [1]
n = 1
while n <= num_lines:
yield line
temp = [0] + line + [0]
line = [temp[i]+temp[i+1] for i in range(len(temp)-1)]
n += 1
t = triangles(10)
for i in t:
print(i)
"""
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1]
[1, 6, 15, 20, 15, 6, 1]
[1, 7, 21, 35, 35, 21, 7, 1]
[1, 8, 28, 56, 70, 56, 28, 8, 1]
[1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
"""
参考文献:https://www.liaoxuefeng.com/wiki/1016959663602400/1017318207388128#0