34 生成器推導式建立元組

2021-10-08 22:51:23 字數 1105 閱讀 4494

從形式上看,生成器推導式與列表推導式類似,只是生成器推導式使用小括號。列表推 導式直接生成列表物件,生成器推導式生成的不是列表也不是元組,而是乙個生成器物件。

我們可以通過生成器物件,轉化成列表或者元組。也可以使用生成器物件的__next__() 方法進行遍歷,或者直接作為迭代器物件來使用。不管什麼方式使用,元素訪問結束後,如果需要重新訪問其中的元素,必須重新建立該生成器物件。

【操作】生成器的使用測試

>>

> s =

(x*2

for x in

range(5

))# 推導式

>>

> s

at 0x0000000002bdeb48

>

>>

>

tuple

(s)(0,

2,4,

6,8)

>>

>

list

(s)#只能訪問一次元素。第二次就為空了。需要再生成一次

>>

> s

at 0x0000000002bdeb48

>

>>

>

tuple

(s)(

)>>

> s =

(x*2

for x in

range(5

))# 生成器 推導式。

>>

> s.__next__(

)# 寫成 也可可以 next(s)

0>>

> s.__next__()2

>>

> s.__next__(

)4

元組的核心特點是:不可變序列

元組的訪問和處理速度比列表快。整數和字串一樣,元組可以作為字典的鍵列表則永遠不能作為字典的鍵使用+

Python元組 生成器推導式建立元組

生成器推導式建立元組 從形式上看,生成器推導式和列表推導式類似,只是生成器推導式使用小括號,列表推導式直接生成列表物件,生成器推導式生成的不是列表又不是元組,而是乙個生成器物件。我們可以通過生成器物件,轉成列表或者元組,也可以使用生成器物件 next 方法遍歷,或者直接使用迭代器物件來使用,不管什麼...

Python生成器推導式建立元組

從形式上看,生成器推導式與列表推導式類似,只是生成器推導式使用小括號。列表推 導式直接生成列表物件,生成器推導式生成的不是列表也不是元組,而是乙個生成器物件。我們可以通過生成器物件,轉化成列表或者元組。也可以使用生成器物件的 next 方法進行遍歷,或者直接作為迭代器物件來使用。不管什麼方式使用,元...

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

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