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()



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