# Python杨辉三角实现
def yanghuiTriangle():
L = [1]
L2 = []
while True:
yield L
L = [1]+[L[x-1]+L[x] for x in range(1,len(L))]+[1]#这里如果是range(1,1)的情况前面的L[0]和L[1]中不是取不到值吗?
for item in yanghuiTriangle():
print(item)
if len(item)>10:
break
L = [1]+[L[x-1]+L[x] for x in range(1,len(L))]+[1]#这里如果是range(1,1)的情况前面的L[0]和L[1]中不是取不到值吗?
L = [1]
时,range(1,len(L))
为range(1, 1)
返回[]
,空列表,所以通过for
迭代,没有次数. 所以得到杨辉三角的第二行L = [1] + [1] = [1, 1]
.雷雷
list(range(1,1)) 等同回传[] yield 递回到底结束。