Python面向对象加强4.iter与next的用法,枚举器enumerate
Python面向对象加强4.iter与next的用法,枚举器enumerate
- 一、iter与next的用法
- 二、枚举器enumerate
一、iter与next的用法
大佬文章传送门:iter与next
iter():iter() 函数用来生成迭代器。list、tuple等都是可迭代对象,我们可以通过iter()函数获取这些可迭代对象的迭代器。然后我们可以对获取到的迭代器不断使⽤next()函数来获取下⼀条数据。iter()函数实际上就是调⽤了可迭代对象的 __iter__ ⽅法。
next():next()函数用来返回迭代器的下一个项目,通常与生成迭代的iter()一起使用。
语法:
next(iterable[, default])
iterable – 可迭代对象
default – 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。
注意,当我们已经迭代完最后⼀个数据之后,再次调⽤next()函数会抛出 StopIteration的异常 。
示例如下:
lst = [0, 1, 2, 3]a = iter(lst)print(next(a))
print(next(a))
print(next(a))
print(next(a))
lst = [0, 1, 2, 3]a = iter(lst)print(next(a))
print(next(a))
print(next(a))
print(next(a))
print(next(a))
可以加入异常判断:
# 首先获得Iteration对象
it = iter([1,2,3,4,5])
# 循环
while True:try:# 获得下一个值print(next(it))except StopIteration:# 遇到StopIteration就退出循环break
二、枚举器enumerate
enumerate函数用于将一个可遍历的数据对象(例如列表list, 元组tuple, 字符串string)组合为一个索引序列,同时列出数据与数据下标。一般用于for循环:
squares=['red', 'yellow', 'green', 'purple', 'blue']for i, square in enumerate(squares):print(i, square)
同时也可以使用next函数:
# 首先获得Iteration对象
it = enumerate([1,2,3,4,5])
# 循环
while True:try:# 获得下一个值print(next(it))except StopIteration:# 遇到StopIteration就退出循环break
Python面向对象加强4.iter与next的用法,枚举器enumerate相关推荐
- Python面向对象程序设计中属性的作用与用法
公开的数据成员可以在外部随意访问和修改,很难保证用户进行修改时提供新数据的合法性,数据很容易被破坏,并且也不符合类的封装性要求.解决这一问题的常用方法是定义私有数据成员,然后设计公开的成员方法来提供对 ...
- python编程语言继承_Python面向对象程序设计类的封装与继承用法示例
本文实例讲述了Python面向对象程序设计类的封装与继承用法.分享给大家供大家参考,具体如下: 访问限制(封装) 1.概念 面向对象语言的三大特征:封装, 继承, 多态. 广义的封装: 类和函数的定义 ...
- python对象编程例子-这是我见过最详细的Python面向对象编程!建议收藏!
原标题:这是我见过最详细的Python面向对象编程!建议收藏! 面向对象编程和函数式编程(面向过程编程)都是程序设计的方法,不过稍有区别. 面向过程编程: 1. 导入各种外部库 2. 设计各种全局变量 ...
- python 面向对象(进阶篇)
上一篇<Python 面向对象(初级篇)>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个" ...
- Python面向对象编程随笔
Python面向对象编程 参考教程:https://www.bilibili.com/video/av8475172?p=1 面向过程与面向对象 面向过程:自顶向下,用于解决计算问题或实现某种算法,与 ...
- 可能是最全的 Python 面向对象入门教程了
作者:浪子燕青 http://www.langzi.fun/Python面向对象编程.html 面向对象编程和函数式编程(面向过程编程)都是程序设计的方法,不过稍有区别. 面向过程编程: 1. 导入各 ...
- python面向对象的优点_Python面向对象编程——总结面向对象的优点
Python面向对象编程--总结面向对象的优点 一.从代码级别看面向对象 1.在没有学习类这个概念时,数据与功能是分离的 def exc1(host,port,db,charset): conn=co ...
- 整理了 70 个 Python 面向对象编程案例,怎能不收藏?
作者 | 周萝卜 来源 | 萝卜大杂烩 Python 作为一门面向对象编程语言,常用的面向对象知识怎么能不清楚呢,今天就来分享一波 文章很长,高低要忍一下,如果忍不了,那就收藏吧,总会用到的 在 Py ...
- 这可能是Python面向对象编程的最佳实践
作者 | 崔庆才 来源 | 进击的Coder(ID:FightingCoder) Python 是支持面向对象的,很多情况下使用面向对象编程会使得代码更加容易扩展,并且可维护性更高,但是如果你写的多了 ...
- 第八课.Python面向对象(二)
类的继承和多态 继承和多态与函数有共同的目的,都是为了减少代码的冗余,提高复用的效率: 根据"Python面向对象(一)"的笔记,我现在定义一个Cinema类: #父类 class ...
最新文章
- “可扩展标记语言”(XML) 提供一种描述结构化数据的方法。
- python录入学生信息网_干货满满 | Python趣味编程教学实践
- python3.72教程_python3教程_编程入门教程_牛客网
- 最短路径(SPFA算法)
- JavaScript中创建对象的方法
- 测试一体机ASM failgroup的相关问题处理
- Linux: chm转HTML How to Convert chm files to HTML or PDF files
- java 插入数据 主键_JDBC插入数据返回数据主键代码实例
- [五]java函数式编程归约reduce概念原理 stream reduce方法详解 reduce三个参数的reduce方法如何使用...
- Java_Spring MVC_Servlet
- PHP 抽象工厂模式(Kit模式)
- 拓端tecdat|基于机器学习的印度肝脏病诊断分析
- CreateFile和WriteFile
- 【Python模块】matplotlib 柱状图
- java 软件开发面试宝典
- java代码安全检测机制,下列选项中,属于Java语言的代码安全检测机制的一项是______。A.动态链接B.访问权限的检查C.通过接...
- Codeforces Round #715 (Div. 2) B. TMT Document——思路分析,清晰易懂
- 一个老的游戏,据说全世界只有不到4000人可以走出房间.密室逃脱--之“天蓝色房间”...
- MATLAB | 七夕节快到了,还不给朋友安排上这个咕呱小青蛙?
- Adobe InDesign CS5
热门文章
- java开发面试自我介绍模板_java程序员面试自我介绍范文(精选3篇)
- 解决VS2017安装一直卡在正在下载
- 离散傅里叶变换的核心公式
- aven class javax.xml.parsers.SecuritySupport12 cannot access its superclass javax.xml.parsers.Secur
- 面试精选逻辑推理题总结
- 黑苹果相关驱动介绍及其使用方法
- 关于打印机驱动无法装载的问题
- IDEA启动报错:Error launching IDEA if you already have a 64-bit JDK installed,define a JAVA_HOME
- Ubuntu系统下把视频转换成gif图片
- STM32工具使用---STVP烧录工具