2019独角兽企业重金招聘Python工程师标准>>>

python迭代器的设计

跟黄哥学python编程系列文章之迭代器

如何自定义迭代器,有2个必要条件

1、自定义类有一个方法__iter__返回实例对象自己,_iter\_ 一般只需要return self 既可。

2、有next()方法,python3 是__next__()方法。

python 3代码实例

class Reverse:"""反转的迭代器参加黄哥python远程视频培训,帮你完成从不会写代码到会写代码解决问题的过渡。python远程视频培训https://github.com/pythonpeixun/article/blob/master/index.mdpython北京周末培训班https://github.com/pythonpeixun/article/blob/master/beijing_weekend.md咨询:qq:1465376564  企业内训,个人培训,请咨询黄哥电话:18610508486 """def __init__(self, data):self.data = dataself.index = len(data)def __iter__(self):return selfdef __next__(self):if self.index == 0:raise StopIterationself.index = self.index - 1return self.data[self.index]foo = Reverse(range(10))
print(foo)
#<__main__.Reverse object at 0x101207400>for i in foo:print(i, end=",")#输出结果9,8,7,6,5,4,3,2,1,0,


转载于:https://my.oschina.net/pythonpeixun/blog/636483

python迭代器的设计相关推荐

  1. python迭代器与生成器答案_史上最全 Python 迭代器与生成器

    原标题:史上最全 Python 迭代器与生成器 作者:浪子燕青 链接:http://www.langzi.fun/迭代器与生成器.html 迭代器与可迭代对象 概念 迭代器:是访问数据集合内元素的一种 ...

  2. Python迭代器和生成器详解(包括yield详解)

    文章目录 一.迭代器 1. 可迭代对象(Iterable) 2. 迭代器对象(Iterator) 3. for 循环原理 4. 迭代器的优缺点 二.生成器 1. yield 原理 2. yield 和 ...

  3. java 迭代器的hasnext,在Python迭代器中具有hasNext?

    Python迭代器是否没有hasNext方法? 相关:我如何知道一开始发电机是否为空? 使用next(iterator, default_value)可以替代StopIteration. 例如: &g ...

  4. python 列表生成器放while_史上最全 Python 迭代器与生成器

    原标题:史上最全 Python 迭代器与生成器 转自:浪子燕青 http://www.langzi.fun/迭代器与生成器.html 概念 迭代器:是访问数据集合内元素的一种方式,一般用来遍历数据,但 ...

  5. Python Qt GUI设计:信号与槽的使用方法(基础篇—7)

    目录 1.信号与槽的概念 2.信号与槽的基础函数 2.1.创建信号函数 2.2.连接信号函数 2.3.断开信号函数 2.4.发射信号函数 3.信号和槽的使用方法 3.1.内置信号与槽的使用 3.2.自 ...

  6. Python Qt GUI设计:窗口布局管理方法【强化】(基础篇—6)

    目录 1. 水平布局类(QHBoxLayout) 2.垂直布局类(QVBoxLayout) 3.网格布局类(QGridLayout) 3.1.单一的网络布局 3.2.跨越行.列的网络布局 4.表单布局 ...

  7. Python Qt GUI设计:窗口布局管理方法【基础】(基础篇—5)

    目录 1.布局管理器进行布局 2.容器控件进行布局 3.geometry属性:控件绝对布局 4.sizePolicy属性:微调优化控件布局 Qt Designer提供4种窗口布局方式,分别如下: Ve ...

  8. python迭代器生成器 学会再缩短一半开发效率 看看大牛是怎么写的

    一.迭代 什么叫做迭代? 比如在 Java 中,我们通过 List 集合的下标来遍历 List 集合中的元素,在 Python 中,给定一个 list 或 tuple,我们可以通过 for 循环来遍历 ...

  9. 简单介绍python迭代器和生成器

    这篇文章主要介绍了Python中的迭代器和生成器,涉及到Python中很多重要的特性,需要的朋友可以参考下,希望能够给你带来帮助 python迭代器和生成器 1.迭代器 这里用字典示例 while T ...

最新文章

  1. Element-ui表格选中回显
  2. tomcat启动不了,报java.lang.Exception: Socket bind failed: [730013] ???
  3. 【数据结构与算法】之深入解析KMP算法的核心原理和实战演练
  4. 中国科学院大学计算机与科学技术学院,贺思敏 - 中国科学院大学 - 计算机科学与技术学院...
  5. 【算法】【殊途同归】搜索算法之(深度优先 || 广度优先) (约束条件 || 限界函数)
  6. Hibernate中的三种数据持久状态和缓存机制
  7. DB2一个嵌套循环的sql
  8. 古老的txt下传和txt上载
  9. 贝叶斯公式的共轭分布
  10. Java aop中参数传递
  11. couchbase 报 The Content of this Observable is already released. Subscribe earlier or tune the Couch
  12. 鼠标点击图片移动时图片移动,松开鼠标,再移动鼠标时,图片仍随着鼠标移动问题
  13. linux网站权限恢复,RMAN异机恢复——备份集权限问题
  14. 常见web登陆授权方式及原理
  15. 大学生java 实训总结
  16. “华为云企业级Java编程规范”学习笔记
  17. php根据某一标识获取所有上级id或所有下级id
  18. 无线系统笔记(2)----麦克斯韦方程组
  19. Qt中事件过滤器eventFilter中所有枚举事件总结
  20. Android 悬浮窗

热门文章

  1. JavaWeb之多语言国际化
  2. Moment.js 一款JS时间封装库
  3. js tooltip之wz_tooltip使用方法和参数备忘
  4. C+++之insert()
  5. 数据结构上机实践第三周项目2 - 建设“顺序表”算法库
  6. Python for和if的连写
  7. (二十六)深度学习目标检测:Fast-RCNN
  8. 写科研论文的高级方法学
  9. nmap扫描ipv6端口_web渗透测试系列 之 扫描(3)
  10. import python settings from_python settings 中通过字符串导入模块