Python可迭代对象和迭代器
1.可迭代对象
大白话:可以重复迭代的东西
专业话:实现了__iter__方法的对象就是可迭代对象
实现了__iter__方法的对象就叫做可迭代对象,__iter__方法的作用就是返回一个迭代器对象。 直观理解就是能用for循环进行迭代的对象就是可迭代对象。
比如:字符串、列表、元组、字典、集合、生成器等,都是可迭代对象。
(1)如何判断是否是可迭代对象? ------> isinstance(对象,Iterable)
1 from collections.abc import Iterable
2
3 list1 = [1, 2, 3, 1, 2]
4 f = isinstance(list1, Iterable)
5 print(f) # >> True
6
7 f = isinstance('abc', Iterable)
8 print(f) # >> True
9
10 f = isinstance(100, Iterable)
11 print(f) # >> False
12
13 g = (x + 1 for x in range(10))
14 f = isinstance(g, Iterable)
15 print(f) # >> True
2.迭代器
迭代是访问集合元素的一种方式迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元
素开始访问,直到所有的元素被访问完结束。迭代器只能往前会后退。
可以被next()函液调用并不断返回下一个值的对象称为迭代器:Iterator.
1 list1 = [1, 2, 3, 4, 5]
2 list1 = iter(list1)
3 print(next(list1))
4
5 a = 'abd'
6 a = iter(a)
7 print(next(a))
8
9 dict1 = {'a': 'A', 'b': 'B'}
10 dict1 = iter(dict1)
11 print(next(dict1))
12
13 tuple1 = ('a', 'b', 'c', 'd', 'e', 'f')
14 tuple1 = iter(tuple1)
15 print(tuple1) # >> <tuple_iterator object at 0x000001A9380ED988>
16 print(next(tuple1)) # >> a
作者:Ambitious
-------------------------------------------
个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•̀ω•́)っ✎⁾⁾!