位置: 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上传视频到服务器)

  • 企业如何做增量
  • 预提所得税的计税基础
  • 税收工资什么意思
  • 商品进销差价属于流动资产吗
  • 现金流量为负的隐患
  • 小微企业十万免税从什么时候开始
  • 个人所得税本期免税收入是指什么
  • 一般纳税人开专票几个点
  • 工程实际成本核算例题
  • 商场促销的税务处理怎么做?
  • 打样费单位是什么
  • 对以前年度的收入调整
  • 季度交的企业所得税怎么做账
  • 记账时显示期初未建账
  • 不动产租赁异地预缴需要携带什么
  • 企业报税没报怎么办
  • 调整已结转的税种有哪些
  • 增值税发票开票限额怎么申请?
  • 个人所得税需要计提吗?怎么做会计分录
  • 员工离职赔偿计入什么科目
  • 当月不抵扣的增值税发票在发票勾选时怎么操作
  • 银行收取年费是什么意思
  • 应交税费重分类分录
  • 消费税如何避税计算
  • 月底财务为什么要关账,暂时开不了发票
  • 备孕男的要吃叶酸吗? 已解决
  • win11闪屏问题
  • linux如何删除lv
  • php trim()
  • 调整以前年度管理费用会计分录
  • 消费税计算包括关税吗
  • phalcon model在插入或更新时会自动验证非空字段的解决办法
  • pyqt5如何安装
  • 嵌套循环语句
  • 安全文明措施费费率一般为多少
  • 企业接受捐赠要交增值税
  • 话费补贴算工资还是福利
  • 以前年度的应交税费贷方怎么调平
  • python有什么用
  • 怎么用java写代码
  • 持有至到期投资属于什么科目
  • 个税补缴纳
  • 高速公路通行发票税率
  • 商品流通企业存货计价方法
  • 财政补助收入的账务处理
  • 其他应付款是什么类账户
  • 收据作为原始凭证的依据
  • 什么是公司财务管理中的一个重要组成部分
  • 作业成本多用于直接成本的核算
  • 应收账款收不回来怎么处理分录
  • 暂估入库估多了,汇算清缴前调整
  • 企业股东撤资如何清算
  • 不用人工
  • 工会筹备金记什么科目
  • 应付职工薪酬包括福利费吗
  • 累计盈余下级科目
  • 企业成本结转分录
  • 红字冲销有没有时间限制
  • 代理记账许可证查询
  • solaris11下载
  • 注册表禁止windows自动更新
  • centos配置yum
  • xwizard.exe是什么
  • ubuntu20怎么连接蓝牙鼠标
  • winxp如何增加c盘空间
  • linux分区方案lvm
  • rnbrcache.exe是什么意思
  • [置顶] [寒江孤叶丶的Cocos2d-x之旅_29]在Cocos2d-x中集成protobuf (Protocol Buffers)
  • Tutorial 6:Translation Transformation
  • 游戏开发之二维码怎么弄
  • android获取手机的基本信息
  • javascript面向对象编程指南第三版
  • bootstrap要学多久
  • 湖南省电子国税
  • 北京税务跨区迁移不予受理,原因是什么
  • 房产税什么时候开始征收
  • 上海网上纳税申报流程
  • 个人所得税app可以更改电话号码吗
  • 增值税发票打印机怎么调整打印位置
  • 长治一诺代理记账公司
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设