迭代是一种遍历容器的方法,可以使用for in遍历的都是可迭代的对象
在python中提供了一个函数用来判断是否为可迭代对象即isinstance(对象,Iterable)函数
- from collections.abc import Iterable
- s = "hello world"
- a = 10
- print(isinstance(s,Iterable))
- print(isinstance(a,Iterable))
True
False
什么是迭代器?
在python中提供了一个函数用来判断是否为迭代器即isinstance(对象,Iterator)函数
- from collections.abc import Iterator
- s = "hello world"
- a = 10
- print(isinstance(s,Iterator))
- print(isinstance(a,Iterator))
False
False
- from collections.abc import Iterator
- from collections.abc import Iterable
- s = "hello worle"
- a = [1,2,3]
- ss = iter(s)
- aa = iter(a)
- print(isinstance(ss,Iterator))
- print(isinstance(aa,Iterator))
- print(isinstance(ss,Iterable))
- print(isinstance(aa,Iterable))
- print(next(ss))
True
True
True
Trueh
那我们如何去转换成迭代器?
使用iter()函数,它需要一个变量去接受,不改变原有变量
- from collections.abc import Iterator
- from collections.abc import Iterable
- a = [1,2,3]
- print(isinstance(a,Iterable))
- print(isinstance(a,Iterator))
- b = iter(a)
- print(isinstance(b,Iterable))
- print(isinstance(b,Iterator))
True
False
True
True