"""
1. for 变量 in 可迭代:
pass
可迭代:str,list,tuple,dic,set,open()
可迭代的数据类型都会提供一个迭代器,这个迭代器会将数据类型中的数据逐一的拿到
2. 获取迭代器的2种方案:
1. iter() 内置函数可以直接拿到迭代器
2. __iter__ 特殊方法(用的不多) it = "呵呵哒".__iter__()
3. 从迭代器中拿到数据:
1. next() 内置函数
2. __iter__() it = "呵呵哒".__next__()
#模拟for循环的工作原理:
s = "我是数据"
it = s.__iter__() #拿到迭代器
while True:
try:
data = it.__next__()
print(data) #for循环的循环体
except StopIteration:
break
print(123456)
*** 总结:迭代器统一了所有不同数据类型的遍历工作
4. 迭代器本身是可以被迭代的
s = "我是数据"
item = s.__iter__()
for i in item:
print(i)
5. 迭代器本身特性
5.1 只能向前,不能反复拿数据
5.2 特别省内存
5.3 惰性机制(迭代器一旦创建好,只有访问next的时候才访问)
"""
python3学习之路 -- 4.9)迭代器
最新推荐文章于 2024-07-15 18:42:47 发布