代碼實現:
# python實現楊輝三角形
def yanghui(): # 定義第一行列表為[1]
line = [1] while True: # yield的作用:把一個函數變成生成器,同時返回一個list,下次從yield的下條語句執行
yield line # 設上一個為[1],通過式子可得[1,1],繼而[1,2,1]......
line = [1] + [line[i] + line[i + 1] for i in range(len(line) - 1)] + [1] # 輸入楊輝三角形的行數
n = int(input("請輸入行數:")) # 定義一個結束的變量
flag = 0 # 生成器可迭代,做個遍歷
for i in yanghui(): # 打印每行的列表的元素,用空格連接
print(" ".join(str(j) for j in i)) # 打印完一行,flag+1
flag += 1
# 如果變量flag等於輸入的行數,跳出for循環
if flag == n: # 跳出循環
break
效果:
請輸入行數:6
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
Process finished with exit code 0