#!/usr/bin/python
# -*- coding: utf-8 -*-
# 杨辉三角函数
def triangle():
lis = [1] # 初始化输出列表
while True: # 死循环
yield lis # 生成器
lis.append(0) # 列表增加长度 1,末值0
lis = [lis[i - 1] + lis[i] for i in range(len(lis))] # 列表生成式(列表解析)
# for循环迭代输出
n = 0
for list in triangle():
print list
n += 1
if n == 10:
break
[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]
使用生成器结合列表生成式,迭代输出每行杨辉三角函数生成的列表值