位置: IT常识 - 正文

python中for循环的底层实现(python中for循环的缩进规则)

编辑:rootadmin

推荐整理分享python中for循环的底层实现(python中for循环的缩进规则),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python中for循环的用法,python中for循环的用法打印出星星,python中for循环的用法range,python中for循环的特点,python中for循环的用法,python中for循环的用法range,python中for循环的用法 数组,python中for循环的用法,内容如对您有帮助,希望把文章链接给更多的朋友!

在python中,存在2种循环方式:for循环和while循环。

while循环的实现很简单, 其本质就是一个条件语句,自定义条件,当条件满足的时候,不断执行while代码块。

但是for循环,究竟是怎么回事呢?说到for循环,那么就不能不讲到迭代了。

迭代

python中迭代对象分2种:迭代器对象(Iterator)、可迭代对象(Iterable)。

tips:如何判断一个对象是迭代器对象还是可迭代对象?

fromcollectionsimportIterable,Iterator

isinstance(object, class),第一个参数为对象,第二个参数为类名;返回值为True,即对象为:

相关推荐:《Python视频教程》

python中for循环的底层实现(python中for循环的缩进规则)

1.可迭代对象

很多python的数据类型都是可迭代对象:列表、字典、元组、字符串等。

a = [1, 2, 3]

isinstance(a, Iterable) # True

注意:可迭代对象,并不是迭代器对象

2.迭代器对象

迭代器对象依赖iter(args)方法来实现,参数args必须是一个可迭代对象。

a=[1,2,3]b=iter(a)isinstance(b,Iterator)#Trueisinstance(b,Iterable)#True

由此可以看出,迭代器对象,同时也是可迭代对象。

那么,这2个对象,到底和for循环的关系在哪里呢?

for循环

我们都知道,迭代器对象,实现了__next__()方法,可以不断调用该方法,返回迭代器对象的每个元素

for循环的对象,必须是可迭代对象。而在底层,所有的可迭代对象均内置了__iter__()方法,返回值为迭代器对象。

此时,我们便明了了,for循环本质上调用了可迭代对象的__iter__()方法,得到了该对象对应的迭代器对象,然后调用__next__()方法,得到对象中的每一个元素。直到StopIteration异常,代表迭代器中已无下一个元素,for循环自动处理该异常,跳出循环。

相关推荐:

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

上一篇:phpcms上传图片提示服务器安全认证错误的原因及解决方法(php实现图片上传)

下一篇:phpcms上传服务器后,后台打不开怎么办(php上传视频到服务器)

  • 退税是什么科目的
  • 房产税计税依据是什么
  • 文化事业建设费减免政策
  • 工会经费支付福利方案
  • 电子税务局怎么删除办税员
  • 固定资产清理哪方登记增加
  • 投资收益免征企业所得税
  • 生产型企业出口退税计算公式
  • 公司基本户如何注销
  • 顺丰开专票有明细吗
  • 个税申报本期收入包括社保吗
  • 技术服务行业分析
  • 资产减值损失会影响利润吗
  • 申办企业所得税抵缴带哪些资料?
  • 三证合一后新老税号不符合
  • 如何办理临时经营纳税人设立登记
  • 清算所得计算例题
  • 购买防疫物资计划
  • 所得税费用一年交几次
  • 吸收合并具体分录
  • 固定资产上的配件经常更换
  • 盘点固定资产
  • 待抵扣进项税额借贷方向
  • 净利润等于未分配利润和盈余公积吗
  • 行政事业性收费包括哪些项目
  • 事业单位授权支付一体化退库
  • 一年内的待摊费用可以一次性进入成本吗
  • 电脑xmp是啥
  • 存放同业属于什么业务
  • 网站国际化方案
  • 运城盐湖中国死海养生城
  • Symfony2实现在doctrine中内置数据的方法
  • 长期借款利息调整会计分录
  • php日期时间函数
  • Code For Better 谷歌开发者之声——初识Web与谷歌,拉起兴趣之心。
  • phpcms手机端
  • 商品过期的会计分录
  • 营业利润包括资产处置收益吗
  • 单位购买防疫物资会议纪要
  • 织梦安装步骤
  • linux数据库导入命令
  • vue安装插件
  • 哪些无票费用能够抵扣所得税
  • 公司注销公章的处理
  • mysql 索引 key
  • 个人所得税申报方式选哪个比较好
  • 自然人独资交企业所得税吗
  • 免税企业税金及附加计算
  • 查定征收在哪一章
  • 所得税纳税调增会计需要做业务处理吗
  • 现金冲账是什么意思
  • 应付账款会计分录例题
  • 供应商质量考核单
  • 工会需要独立建账吗
  • 2021年会计做账报税详细流程
  • 年终建账于年初建账,在录入期初余额时有什么不一样?
  • macos终端删除文件
  • windows么
  • xp系统如何做
  • ultra系统优盘恢复
  • U盘安装centos7步骤
  • 在windows下把绿色程序添加到鼠标右键的方法
  • 怎么彻底删除win11安全中心
  • 给推荐几款
  • windows xp系
  • Win10 Mobile Build 10586.xx将持续更新 WP8.1用户可直升最新版
  • win10取消uac
  • 晚上睡觉艾草贴肚脐
  • 安卓手机插电脑上用id密码能查什么
  • jsp下拉框跳转到相应页面
  • 不是批处理文件
  • js入门基础教程
  • 安卓 自动更新
  • jquery 跨域方法
  • Android多个surface
  • 出租场地的税费
  • 江苏税务法人实名采集怎么操作流程
  • 纳税人识别号和公司税号一样吗
  • 省税务局属于什么级别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设