Python编程语言已经扩展了创新的每一个方面,包括机器学习、数据科学、人工智能等,这些概念是Python作为编程语言取得成功的基石。在本文中,我们将通过以下概念来理解Pytho

Python编程语言已经扩展了创新的每一个方面,包括机器学习、数据科学、人工智能等,这些概念是Python作为编程语言取得成功的基石。在本文中,我们将通过以下概念来理解Python迭代器:

迭代器与Iterable什么是Python迭代器?自定义迭代器无限迭代器停止迭代Python迭代器示例迭代器与Iterable

Python中可以用作Iterable对象的对象称为Iterable。这基本上意味着对象中的序列可以迭代。大多数Python集合,比如list、dictionary、tuple、set,甚至range,都可以看作是Iterable。

什么是Python迭代器

“Python迭代器是一个包含可数个值的容器。容器中的值可以使用迭代器(特别是列表)遍历。

除了遍历之外,迭代器还提供对容器中数据元素的访问,但它本身并不执行迭代,即,如果不使用该概念或术语的简单使用而获得一些重要的自由,则不会执行迭代。迭代器在行为上几乎类似于数据库游标。下面是Python中迭代器的一个简单示例。

我的目标是{“Edureka”,“Python”,“迭代器”}打印(下一个(iter_obj))对于对象中的i:印刷品(一)

让我们了解for循环如何作为迭代器工作。

#从该iterable创建迭代器对象#无限循环如果是真的:尝试:#获取下一个项目元素=下一个(iter_obj)除了停止迭代:打破MyNumber类:自我a=1下一个定义(自我):自身a =1my >输出:1

2

3

既然我们知道如何实现自定义迭代器,让我们看看Python中的无限迭代器。

无限迭代器

迭代器对象中的项不一定要用尽。可以有无限的迭代器(永不结束)。下面是演示无限迭代器的基本示例。

内置函数iter()可以用两个参数调用,其中第一个参数必须是可以调用的对象(函数),第二个参数是sentinel。迭代器调用这个函数,直到返回的值等于sentinel。

让我们举一个例子来理解这个

MyNumber类:定义(自我):回归自我 下一个定义(自我):自身a =1返回x my >输出:1 2 3 4 5

在上面的示例中,只要我们继续添加print语句,就可以继续执行。要停止无限迭代器,我们需要使用stopietition语句。

stopietition

要停止永远进行的迭代,我们需要使用stopietition语句。让我们通过几个例子来理解这个问题。

定义(自我):自我。a=1个 下一个定义(自我):如果self.a&;lt;=5:自我。a =1个其他: my >输出:Edureka

在本例中,我们使用元组作为iterable对象。

iter_obj=iter(我的目标)

输出:Edureka

我们甚至可以在python中将字符串用作iterable对象。

my_obj=“爱德华雷卡”打印(下一个(iter_obj))

python中迭代器有哪些_Python迭代器:什么是Python中的迭代器以及如何使用它?相关推荐

  1. pandas 把某一列中字符串变数值_Python学习教程:Python数据分析实战基础 | 初识Pandas...

    这段时间和一些做数据分析的同学闲聊,我发现数据分析技能入门阶段存在一个普遍性的问题,很多凭着兴趣入坑的同学,都能够很快熟悉Python基础语法,好像自己什么都会了一点,然而实际操作起来既不知从何操起, ...

  2. python中用函数编写程序_python编写程序,在程序中定义一个函数,计算1+1/2+1/3+1/4+……+1/n...

    python语言编写的程序需要运行库.Python(英语发音:/?pa?θ?n/),是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于 ...

  3. python输出奇数数字序列_python在一串数字中选出奇数-女性时尚流行美容健康娱乐mv-ida网...

    女性时尚流行美容健康娱乐mv-ida网 mvida时尚娱乐网 首页 美容 护肤 化妆技巧 发型 服饰 健康 情感 美体 美食 娱乐 明星八卦 首页  > 高级搜索 js 验证 数字 (验证字符 ...

  4. python手机怎么下载软件_python利器app下载-python利器手机版 _5577安卓网

    python利器app下载推荐给大家!这是一款深受用户青睐的python学习软件,开发商是白瑾浩,这里有非常全面的教育资源,超多课程不断更新,让你不怕知识落伍,还可以下载相关的课件随时随地都可以学习! ...

  5. python获取系统时间月份_python 取数组绝对值python获取当前日期

    今天群里一个人问了怎么获取当前时间的问题,以前接触过计算日期之差的,具体代码如下: import datetime d1=datetime.datetime(2014,3,14) d2=datetim ...

  6. python的起源和发展_Python入门第一课——Python的起源、发展与前景!

    我们在做任何一件事情之前,我们都会通过各种渠道去搜集事情的信息,了解事情的来龙去脉,学习一门编程语言也是如此,只有知根知底,我们才能有明确的方向和目标,以及底气去完成这件事情,今天我带大家来看看Pyt ...

  7. python手机编译器可以干什么_Python是什么?Python学习用哪些编译器?

    Python是什么?Python是一个非常好用的程序语言,开发的速度非常快.Python的设计哲学是优雅.明确.简单.因此,Perl语言中总是有多种方法来做同一件事的理念在Python开发者中通常是难 ...

  8. python输入y继续运行_Python二三事 - 接触Python(x,y)

    注释:本文原来转自博客大巴的一篇文章,向原作者致谢!我也做了相应的修改,更加完善对于Pythonx,y的介绍 Python 二三事 面向初学者介绍Python相关的一些工具,以及可能遇到的常见问题. ...

  9. python na不显示 占位_Python学习之路—Python基础(一)

    前言 在Python学习之路-初识Python一文中,简单的介绍了Python的基本信息,搭建了Python的基础运行环境,这篇文档将主要展现一些Python的入门必备内容,如有错误或遗漏的地方,欢迎 ...

  10. python列表转化为数字信号_python 经典数字滤波实例 Python 数字信号处理程序实现分享解...

    常用的数字滤波的方法都有哪些,写出其中三种数字经典滤波的概念,是根据傅里叶分析和变换提出的一个工程概念.根据高等数学理论,任何一个满足一定条件的信号,都可以被看成是由无限个正弦波叠加而成.换句话说,就 ...

最新文章

  1. MySQL语句第二高的薪水查询
  2. Ubuntu/Debian 系统切换Java(JVM),修改Java版本,JAVA_HOME
  3. Git教程学习(一)
  4. BZOJ.4247.挂饰(背包DP)
  5. Please move ‘proctime(r_proctime)‘ to the end of the schema.以及rowtime和proctime
  6. 二维与三维之间的桥梁——点云
  7. 特殊的空格-ASCII码值160
  8. windows11中文语言包|windows11中文汉化包
  9. 神经影像研究驱动的脑龄估计作为脑疾病和健康状况识别的生物学标记
  10. word2vec python实现
  11. Android androidx.startup:startup-runtime的minCompileSdk问题
  12. MySQL-redo和undo
  13. linux .so文件能解压吗,linux系统中rar解压文件安装和使用详解
  14. Windows每天定时启动应用程序
  15. 2018一瞬即逝,奋斗的日子也需要停下来,总结反思,2019也许不会更好,但不会差。
  16. Eclipse学习1-Eclipse简介
  17. 你不得不知道的xxx系列汇总(10.29更新)
  18. 如何写出最有效的论文标题
  19. 青云QingCloud推出AppCenter 2.0 对话合作伙伴分享上云价值
  20. SAP价值流程帮助请求流程-011

热门文章

  1. mysql下载64位 csdn_Linunx-CentOS7安装mysql-5.7.23-linux-glibc2.12-x86_64.tar
  2. ppython_Python pcom包_程序模块 - PyPI - Python中文网
  3. c#输入三个数选出最大的_C#习题,3、 输入三个数字,输出他们的最大值。(if) | 学步园...
  4. 教师计算机培训心得体会范文,xx年教师计算机培训心得体会范文.doc
  5. mcq 队列_MCQ | 8086微处理器中的寻址模式
  6. numpy zeros矩阵_零矩阵使用numpy.zeros()| 使用Python的线性代数
  7. 图片人脸检测——Dlib版(四)
  8. Asp.net中Js、Css文件压缩辅助类
  9. C# 将程序添加开机启动的三种方式
  10. Js实现动态插入删除文本框