位置: 编程技术 - 正文

Python迭代和迭代器详解(迭代 python)

编辑:rootadmin

推荐整理分享Python迭代和迭代器详解(迭代 python),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python迭代算法举例,迭代法python,python迭代算法举例,python中什么叫迭代,python迭代算法举例,python里迭代,python中什么叫迭代,python迭代算法举例,内容如对您有帮助,希望把文章链接给更多的朋友!

迭代器

迭代器(iterator)有时又称游标(cursor)是程式设计的软件设计模式,可在容器物件(container,例如链表或阵列)上遍访的界面,设计人员无需关心容器物件的内存分配的实现细节。

摘自维基百科

也就是说迭代器类似于一个游标,卡到哪里就是哪里,可以通过这个来访问某个可迭代对象的元素;同时,也不是只有Python有这个特性。比如C++的STL中也有这个,如 vector<int>::iterator it 。下面主要说一下Python中的可迭代对象和迭代器吧。

Python可迭代对象(Iterable)

Python中经常使用 for 来对某个对象进行遍历,此时被遍历的这个对象就是可迭代对象,像常见的 list , tuple 都是。如果给一个准确的定义的话,就是只要它定义了可以返回一个迭代器的 __iter__ 方法,或者定义了可以支持下标索引的 __getitem__ 方法(这些双下划线方法会在其他章节中全面解释),那么它就是一个可迭代对象。

Python迭代器(iterator)

Python迭代和迭代器详解(迭代 python)

迭代器是通过 next() 来实现的,每调用一次他就会返回下一个元素,当没有下一个元素的时候返回一个 StopIteration 异常,所以实际上定义了这个方法的都算是迭代器。可以用通过下面例子来体验一下迭代器:

自己实现一个迭代器,如下(参见官网文档):

生成器(Generators)

生成器是构造迭代器的最简单有力的工具,与普通函数不同的只有在返回一个值的时候使用 yield 来替代 return ,然后 yield 会自动构建好 next() 和 iter() 。是不是很省事。例如:

生成器最佳应用场景是:你不想同一时间将所有计算出来的大量结果集分配到内存当中,特别是结果集里还包含循环。比方说,循环打印个数,我们一般会使用 xrange() 而不是 range() ,因为前者返回的是生成器,后者返回的是列表(列表消耗大量空间)。

将可迭代对象转化为迭代器。

生成器表达式

和列表推导式唯一的区别就是中括号换成了小括号,如下:

Python端口扫描简单程序 本文实例为大家分享了Python端口扫描的实现代码,供大家参考,具体内容如下获取本机的IP和端口号:importsocketdefget_my_ip():try:csock=socket.socket(socket.AF_INET,so

Python用zip函数同时遍历多个迭代器示例详解 前言本文主要介绍的是Python如何使用zip函数同时遍历多个迭代器,文中的版本为Python3,zip函数是Python内置的函数。下面话不多说,来看详细的内容。应

详解Python多线程 本文实例为大家解析了Python多线程,供大家参考,具体内容如下1、多线程的理解多进程和多线程都可以执行多个任务,线程是进程的一部分。线程的特

标签: 迭代 python

本文链接地址:https://www.jiuchutong.com/biancheng/383463.html 转载请保留说明!

上一篇:python通过cookie模拟已登录状态的初步研究(python cookie session)

下一篇:Python端口扫描简单程序(主机端口扫描程序设计python)

  • 小规模纳税人可以开9%专票吗
  • 什么是税收制度构成要素的中心环节
  • 甲乙公司与银行之间的往来如何记账
  • 增值税税控系统专用设备
  • 汇兑损益现金流量表列示
  • 一税两费可以从费用中扣除吗
  • 企业开出的普票和专票对税额有影响吗
  • 企业所得税纳税人包括哪些类型
  • 固定资产暂估折旧能税前扣除吗
  • 公司成立初期费用入账
  • 管理费用的明细科目怎么写
  • 外购烟叶税进项税额的扣除率
  • 退回多交企业所得税分录
  • 工资低于3000要申报吗
  • 购入厂房时缴的土地增值税如何入账?
  • 劳务建筑公司一年可以赚多少
  • 医院医保统筹支付后还能报销吗
  • 企业修路会计分录
  • 分公司向总公司转钱可以吗
  • 税控专用设备全称是什么
  • 欧拉操作系统和龙蜥哪个好用
  • 局域网内ip地址冲突怎么找出来
  • .exe文件怎么打不开
  • 购买办公桌会计分录
  • 进项税额转出如何做账分录
  • win10字体有些模糊
  • PHP:session_destroy()的用法_Session函数
  • 资金占用利息会计处理
  • 股份支付如何缴纳个人所得税?
  • 原始凭证可以没有名称吗
  • php和aspnet哪个好
  • php实现和工作原理
  • 新注册的外贸公司花名册
  • 增值税纳税人兼营免税减税项目的
  • 其他权益工具投资属于什么科目
  • 公司法人和股东哪个承担的责任大
  • utermux命令
  • 工会筹备金和工会经费滞纳金计算一样吗
  • 年报资金数额是什么意思
  • SQL Sever 2005 Express 安装失败解决办法
  • 个人所得税申请退税多久能到账
  • 住房公积金有什么好处和优势?
  • 个税系统里的免税收入怎么填
  • 股东所有者权益负数
  • 库存商品的成本主要包括
  • 社保金的滞纳金个人承担吗?
  • 借款利息收入发票
  • 本年利润到年末还有余额吗
  • 研发支出的定义
  • 被投资企业注销,确认投资损失需
  • 什么是四大行业
  • 工程检测公司的账务处理流程
  • 建账前的准备工作
  • 旅游饮食服务企业的特点包括
  • sqlserver 17051解决方案
  • mysql数据库内存缓存设置
  • mac安装mysql没看见初期密码
  • MySQL为字段添加主键
  • win7系统如何提升性能
  • 使用删除命令删除硬盘文件后
  • win10文件夹设置
  • wweb32.exe - wweb32是什么进程
  • win10相机模糊
  • xp系统的程序和功能在哪里
  • puppset
  • mac电脑卡死按哪三个键
  • linux ./文件
  • 各种linux系统比较
  • reald是什么格式
  • vps禁用ipv6
  • node.js操作文件
  • unity 位图字体
  • bootstrap怎么学
  • 如何利用Fabric自动化你的任务
  • Python实现Sqlite将字段当做索引进行查询的方法
  • 浙江省网上税务局app下载
  • 金税全国客服电话
  • 什么叫关联单位
  • 江苏房产税如何计算公式
  • 保险公司的人可以查到买保险的人都买了什么保险吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设