Python高階06 列表推導

2022-10-10 12:18:08 字數 846 閱讀 2207

列表推導是一種從其他列表建立列表的方式,類似於數學中的集合推導。

列表推導的使用方式非常簡單,有點類似於for迴圈。

>>> [x * x for x in range(10)]

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

如果想列印那些能被3整除的平方值呢?這時候可以在列表推導中新增一條if語句:

>>> [x * x for x in range(10) if x % 3 ==0]

[0, 9, 36, 81]

還可新增多層for迴圈(三層和三層以上的迴圈很少用到):

>>> [(x, y) for x in range(3) for y in range(3)]

[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]

運用列表生成式,可以寫出非常簡潔的**。

>>> d = 

>>> [k + '

=' + v for k, v in

d.items()]['

x=a', '

y=b', '

z=c']

>>> l = ['

hello

', '

world

', '

ibm', '']

>>> [s.lower() for s inl][

'hello

', '

world

', '

ibm', '

']

Python自學筆記 11 列表推導

用到函式的乙個常見操作是將其用於乙個列表的所有項,並使用結果來建立乙個新的列表。如果我們要生成list 1,2,3,4,5,6,7,8,9,10 能用哪種方法呢?當然最基礎的方法可以參見列表 上 但是,這種只適合項比較少的一些場景,現在我們要生成1到999的列表怎麼辦呢?list range 1,1...

Python 入門 11 列表推導式

系統 windows 7 語言版本 anaconda3 4.3.0.1 windows x86 64 編輯器 pycharm community 2016.3.2 已知列表x,對列表中每乙個元素 2,求新列表 傳統方法 我們可以新建乙個列表,對原列表進行迴圈操作,計算後的元素寫入新列表 這種寫法,功...

python3基礎 06 列表

3list.extend seq 在列表末尾一次性追加另乙個序列中的多個值 用新列表擴充套件原來的列表 5list.insert index,obj 將物件插入列表 空列表可以簡單地通過兩個中括號進行表示 一裡面什麼東西都沒有,但是,如果想建立乙個占用十個元素空間,卻不包括任何有用內容的列表,又該怎...