python基礎學習筆記(二) 迭代器

一、什麼是迭代器

迭代器是一個對象,也是訪問集合的一種方式,從集合第一個位置開始,到最後一個位置截止

二、哪些是可迭代對象

1、list、set、tuple、dict、str

2、generator對象(生成器和yield)

注:可迭代對象不一定是迭代器(可以使用next)

如何判斷是否是可迭代對象

from collections import Iterable

isinstance([],Iterable)=>true

isinstance({},Iterable)=>true

isinstance('',Iterable)=>true

isinstance((x for x in range(10)),Iterable)=>true

isinstance(100,Iterable)=>false

如何判斷是否是迭代器(可否使用next())

from collections import Iterable

isinstance([],Iterable)=>false

isinstance({},Iterable)=>false

isinstance('',Iterable)=>false

isinstance((x for x in range(10)),Iterable)=>true

isinstance(100,Iterable)=>false

 list 、 dict 、 str 雖然是 Iterable ,卻不是 Iterator 。

把 list 、 dict 、 str 等 Iterable 變成 Iterator 可以使用 iter() 函數:

三、使用示例

a = (x for x in range(10))

a.next()



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章