Python 实现杨辉三角
生活随笔
收集整理的這篇文章主要介紹了
Python 实现杨辉三角
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
方法一:
a = int(input()) list1 = [1]for i in range(a):# 只有 1 行或者 2行if i == 0:print(list1)elif i == 1:list1.append(1)print(list1)else: # 3行以上list2 = []for j in range(i+1):if j == 0:list2.append(1)elif j == i:list2.append(1)else:list2.append(list1[j]+list1[j-1])list1 = list2print(list1)運(yùn)行結(jié)果:
10 [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]方法二:
a = int(input()) list1 = [1]for i in range(a):print(list1)list1.append(0)list2 = list1list1 = [list1[j]+list1[j-1] for j in range(i+2)]這里涉及到列表推導(dǎo)式
列表推導(dǎo)式可以快速生成一個(gè)列表。語法格式如下:
列表推導(dǎo)式最終的目的是為了改造輸入序列。for 后面的變量,表示輸入序列里的元素;輸出表達(dá)式,是產(chǎn)生最終列表的元素的計(jì)算公式;可選的判斷表達(dá)式,可以對(duì)輸入序列里的元素進(jìn)行篩選。
例子:
list1 = [x*3 for x in range(1, 5)] print(list1)結(jié)果:
[3, 6, 9, 12]總結(jié)
以上是生活随笔為你收集整理的Python 实现杨辉三角的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 洛谷 P1059 [NOIP2
- 下一篇: Android --- RecycleV