python3函数迭代器

迭代器协议:

专业领域包括网站设计、成都网站制作成都商城网站开发、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联建站的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。

迭代器协议,是指对象(实例)能够使用next函数获取下一项数据,在没有下一项数据之前触发一个StopIteration异常来终止迭代

next(it)  对应__next__(self)方法

iter(obj) 对应__iter__(self)方法,通常返回一个可迭代对象

class odd:

    def __init__(self,begin,end):

        self.beg = begin

        self.end = end 

        self.cur = begin   #数据的当前位置

    

    def __next__(self):

        """print("next被调用")"""

        if self.cur >= self.end:

            raise StopIteration

        #此判断获取一个奇数,

        if self.cur % 2 == 0:

            self.cur += 1

        r = self.cur

        self.cur += 1   #步长

        return r

    

    def __iter__(self):

        """__iter__被调用,返回自己作为迭代器,每次返回一个可迭代对象,调用一次__iter__"""    

        self.cur = self.beg

        return self

o = odd(5,10)

for x in o:

    print(x)

print([x for x in o])


分享题目:python3函数迭代器
URL网址:http://bzwzjz.com/article/ggceog.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站建设 手机网站制作 营销型网站建设 成都网站建设公司 重庆手机网站建设 网站建设改版 企业网站设计 做网站设计 营销型网站建设 手机网站制作 成都网站建设 品牌网站建设 成都模版网站建设 网站设计制作 盐亭网站设计 重庆网站制作 阿坝网站设计 达州网站设计 网站建设公司 成都企业网站建设 成都网站设计 定制网站设计