微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python迭代器和生成器介绍

这篇文章主要介绍了Python迭代器和生成器介绍,本文分别用代码实例讲解了Python的迭代器和生成器,需要的朋友可以参考下

迭代器

迭代器是一个实现了迭代器协议的对象,Python中的迭代器协议就是有next方法的对象会前进到下一结果,而在一系列结果的末尾是,则会引发stopiteration

在for循环中,Python将自动调用工厂函数iter()获得迭代器,自动调用next()获取元素,还完成了检查stopiteration异常的工作。

常用的几个内建数据结构tuple、list、set、dict都支持迭代器,字符串也可以使用迭代操作。

你也可以自己实现一个迭代器,如上所述,只需要在类的__iter__方法中返回一个对象,这个对象拥有一个next()方法,这个方法能在恰当的时候抛出stopiteration异常即可。但是需要自己实现迭代器的时候不多,即使需要,使用生成器会更轻松。

复制代码 代码如下:

#!/usr/bin/env python

# coding=utf-8class test:

    def __init__(self, input_list):

        self.list = input_list

        self.i = 0

    def __iter__(self):

        return self

   

    def next(self):

        if self.i == len(self.list):

            self.i = 0

            raise stopiteration

        self.i += 1

        return  self.list[self.i - 1]

上一篇:Python 的类、继承和多态详解下一篇:Django框架 信号调度原理解析 热门搜索

迭代器 

代码生成器 

迭代器协议 

迭代器接口 

迭代器切片 

相关文章

Python迭代器和生成器介绍

2021-09-19阅读(6067)评论(0)推荐()

这篇文章主要介绍了Python迭代器和生成器介绍,本文分别用代码实例讲解了Python的迭代器和生成器,需要的朋友可以参考下

Python的迭代器和生成器使用实例

2021-10-13阅读(8338)评论(0)推荐()

这篇文章主要介绍了Python的迭代器和生成器使用实例,本文讲解了迭代器的next方法、__iter__方法和实例以及生成器的代码实例,需要的朋友可以参考下

Python迭代器和生成器定义与用法示例

2021-10-13阅读(7058)评论(0)推荐()

这篇文章主要介绍了Python迭代器和生成器定义与用法,结合实例形式详细分析了Python迭代器和生成器的概念、原理、定义、使用方法及相关操作注意事项,需要的朋...

python生成器与迭代器详解

2021-11-04阅读(3722)评论(0)推荐()

本文主要给大家记录一下列表生成式,生成器和迭代器的知识点,希望对大家学习python能够有所帮助

Python的迭代器和生成

2021-11-03阅读(9967)评论(0)推荐()

由于在看一个python项目,遇到了迭代器和生成器的使用,正好之前自己也没有细看这部分,今天就稍微梳理一下吧!

深入讲解Python中的迭代器和生成

2021-10-05阅读(5731)评论(0)推荐()

这篇文章主要介绍了Python中的迭代器和生成器,涉及到Python中很多重要的特性,需要的朋友可以参考下

Python学习笔记之迭代器和生成用法实例详解

2021-10-17阅读(4890)评论(0)推荐()

这篇文章主要介绍了Python学习笔记之迭代器和生成用法,结合实例形式详细分析了Python迭代器与生成器的功能、原理、定义及使用方法,需要的朋友可以参考下

取消

有人回复邮件通知

提交评论

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐