迭代器

#我们知道的迭代器有两种:一种是调用方法直接返回的,
# 一种是可迭代对象通过执行iter方法得到的,
#迭代器有的好处是可以节省内存。
# for i in [1234]:
# print(i)
#校验是否可迭代,能被for循环的就是可迭代的
# from collections import Iterable
# l=[1,2,3,4]
# i=1234
# print(isinstance(l,Iterable))
# print(isinstance(i,Iterable))
# print()
# #查看存在不存在_iter_方法,存在的话就满足可迭代协议
# print(dir(l))
# print(dir(i))
#iter方法,生成迭代器:list_iterator,迭代器比可迭代的协议增加一个方法就是:_next_()
# l=[1,2,3,4]
# print(l.__iter__())
# print(dir(l))
# print(set(dir(l.__iter__()))-set(dir(l)))
#迭代器遵循迭代器协议:必须拥有__iter__方法和__next__方法
# l=[1,2,3,4]
# l1=l.__iter__()
# print(l1.__next__())

#
# print((range(4).__iter__()).__next__())
# print('_next_'in dir(range(4)))
from collections import Iterator
print(isinstance(range(10).__iter__(),Iterator))

转载于:https://www.cnblogs.com/lixiaoxuan/articles/8966367.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值