1.什么是可迭代对象
如果给定一个list或tuple,可以通过for循环来遍历这个list或tuple,这种遍历称为迭代,被遍历的对象就成为可迭代对象。
2.什么是迭代器
迭代器是一个可以记住遍历位置的对象。迭代器从集合的第一个元素开始访问,直至所有元素访问完结束。
迭代器有两个基本的方法:iter()和next()。其中iter是用来创建迭代器对象,next()是用来遍历对象的元素。
代码实例:
1 list = [1,3,3,4] 2 a = iter(list) 3 next(a) 4 next(a) 5 next(a)
要注意的是超出迭代对象的方位将会报错
并且迭代器只能向前遍历元素,而不能后退
迭代器对象也可以用常规的for语句进行遍历
代码实例:
1 list = [1,2,3,4] 2 a = iter(list) 3 for b in a: 4 print(a,end = "")
迭代器对象也可以用while语句来进行遍历
代码实例:
list = [1,2,3,4] a = iter(list) while True: try: print(next(a)) except StopIteration: sys.exit()
自定义迭代器
通过定义一个实现迭代器协议方法的类,即可自定义一个迭代器。
代码实例: