Python 列表推導 生成器表示式

2021-09-08 21:30:08 字數 811 閱讀 8320

str

='abc'

codes =

for s in

str:

# 列表推導:是不是更具可讀性?

codes =

[s for s in

str]

使用的原則:只用列表推導來建立新的列表,並且盡量保持簡短,最好不超過兩行

列表推導:構建列表的快捷方式;生成器表示式:建立其他任何型別的序列

語法區別:前者是方括號 「[ ]」,後者是圓括號 」( )」

colors =

['blank'

,'white'

]sizes =

['s'

,'m'

,'l'

]# 列表推導

tshirt =

[(color, size)

for color in colors for size in sizes]

type

(tshirt)

# list 物件

# 生成器表示式

tshirt =

('%s %s'

%(c, s)

for c in colors for s in sizes)

type

(tshirt)

# 生成器(generators)

生成器,生成器推導式和列表推導式

python社群,大部分生成器和迭代器是一種 生成器的本質是迭代器 唯一區別 生成器是我們自己用python 構建的資料結構 迭代器都是提供的,或者轉化得來的 生成器函式 生成器表示式 python提供的 yield 乙個next 對應乙個yield yield和下乙個yield中間有 的話只執行乙...

Python 列表推導式 生成器表示式

一行 幾乎搞定你需要的任何的列表。篩選模式 優缺點將列表推導式的 換成 即可。100w資料占用記憶體很大,所以對於資料量比較大的資料,要用生成器表示式 g i for i in range 1000000 print g print g.next print g.next 字典推導式 1.將乙個字典...

python 列表推導和生成器表示式

一 列表推導式 通常原則只用來建立新列表,並盡量保持簡短,如果列表 超過了兩行,就要考慮是不是得用for迴圈重寫了 例子1 1 建立新列表 new list i for i in range 10 print new list 執行結果 f virtualenvironment venv scrip...