day4_迭代器

概念:
迭代的概念:重复+上一次迭代的结果为下一次迭代的初始值
重复的过程称为迭代,每次重复即一次迭代,
并且每次迭代的结果是下一次迭代的初始值


可迭代对象:只有__iter__方法,执行该方法得到的迭代器对象

迭代协议:
对象有__next__
对象有__iter__,对于迭代器对象来说,执行__iter__方法,得到的结果仍然是它本身

##############可以作为for 循环的被循环体 都是可迭代对象;
li=[1,2,3,4,5]
a=li.__iter__()    -->生成迭代器
print (a.__next__())
print (a.__next__())
print (a.__next__())
print (a.__next__())

上面和
for i in li:
print (i)
是一样的,只不过 for 循环 捕捉了 报错,然后停掉了

迭代器的优点和缺点
优点:
1.提供了一种不依赖下标的迭代方式
2.就跌迭代器本身来说,更节省内存

缺点:
1. 无法获取迭代器对象的长度
2. 不如序列类型取值灵活,是一次性的,只能往后取值,不能往前退
















转载于:https://www.cnblogs.com/onda/p/6894395.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值