Python列表推導式,集合推導式,元組推導式

2021-10-05 15:27:34 字數 1105 閱讀 4709

先定義乙個列表a

a = [1, 2, 3, 4, 5, 6, 7, 8]

1a = [1, 2, 3, 4, 5, 6, 7, 8]

# 列表推導

d = [i**2 for i in a]

#集合推導

e =

#元組推導

f = (i**2 for i in a)

print(type(d))

print(type(e))

print(type(f))

-------------------------

輸出:123

4567

891011

1213

1415

1617

1819

2021

前兩個是列表和集合,這很正常,最後乙個用的元組,卻是生成器(generator),這是因為元組是不可變的。

要怎麼訪問裡面的元素呢?很簡單:

a = [1, 2, 3, 4, 5, 6, 7, 8]

f = (i**2 for i in a)

for n in f:

print(n)

print(type(f))

---------------------------------------------

輸出:149

1625

3649641

2345

6789

1011

1213

1415

16推導式還可以進行條件判斷:(當a中的元素大於等於5時候才計算)

a = [1, 2, 3, 4, 5, 6, 7, 8]

def conpute(x):

if(x >= 6):

return x**2

return x**3

f = [conpute(i) for i in a]

print(f)

----------------------------------------

輸出:[1, 8, 27, 64, 125, 36, 49, 64]12

3456

78910

將數字或者字串放進列表中:

python之列表推導式,字典推導式,集合推導式

列表推導式 表示式 for 變數 in 舊列表 或者 表示式 for 變數 in 舊列表 if 條件 names sc sfd sdfbgf dgnh b 過濾掉長度小於等於3的名字 print len name 3for name in names print name for name in n...

Python 列表 集合 字典推導式

列表推導式 用乙個表示式建立乙個有規律的列表或控制乙個有規律列表。列表推導式又叫做列表生成式 原理 將for迴圈 包括其內部所有前置語句 都簡寫在乙個括號內 注意 列表推導式實現的時候,可以是for if,也可以是for for巢狀等 形式 字典推導式 快速合併列表為字典或提取字典中目標資料 注意 ...

python 理解列表推導式以及列表推導式巢狀

所謂列表推導式,就是將乙個可迭代的列表遍歷,將每次遍歷的元素拿出來進行一些操作,並用乙個 括起來,組成乙個新的列表 expression for i in item if condition expression 就是對每乙個元素的具體操作表示式 item是某個可迭代物件的元素,如列表,元組或字串等...