python-day17--迭代器

1.迭代:

迭代就是一个一个一个挨着的取值

2.可迭代类型:  str ,列表,元组,集合,字典

3.判断迭代器和可迭代的方法

#第一种:判断内部是不是实现了 __next__
#'__next__' in dir(o)

#第二种:
# from collections import Iterable #可迭代
# from collections import Iterator #迭代器
# isinstance(o,Iterable)
# isinstance(o,Iterator)

from collections import Iterable

from collections import Iterator

map_o = [1,2,3,4]
print(isinstance(map_o,Iterable))
print(isinstance(map_o,Iterator))

4.

#可迭代协议 : 内部实现了__iter__方法
#迭代器协议 : 内部实现了__iter__ __next__方法

#可迭代和迭代器的相同点 : 都可以用for循环

通过iter()得到的结果就是一个迭代器,

5.   迭代器的特点

#可以用for循环
#可以节省内存
#你只能用一次 (用一次它就动一下)

6.    l = [1,2,3,4,5]
  l_iterator = iter(l)

   while True:
     try:
       print(next(l_iterator))
     except StopIteration:
       break

转载于:https://www.cnblogs.com/liuwei0824/p/7274276.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值