以下代码运行通过:
def yanghui():
b = [1]
while True:
yield b
b = [1] + [b[i] + b[i + 1] for i in range(len(b) - 1)] + [1]
n = 0
for t in yanghui():
print(t)
n += 1
if n == 10:
break
运行效果:
NUM = 5
def printLine(lineList):
lineList = [str(tmpNum) for tmpNum in lineList]
print("%s%s" % (" " * (NUM - len(lineList)), " ".join(lineList)))
for i in range(NUM):
if i < 2:
yhList = [1] * (i + 1)
else:
yhList[1:-1] = [(tmpNum + yhList[j]) for j, tmpNum in enumerate(yhList[1:])]
printLine(yhList)