全球热门:Python面向对象编程-魔术方法-__iter__和__next__方法(一)
(资料图片)
在Python面向对象编程中,魔术方法是一种特殊的方法,其名称以双下划线开头和结尾。这些方法在类定义中使用,用于定义对象的行为。其中,__iter__和__next__方法是用于定义迭代器对象的魔术方法,它们在for循环中起到重要作用。
__iter__方法是迭代器对象的入口点,用于返回一个迭代器对象。它必须返回一个实现了__next__方法的对象,否则会引发TypeError异常。在调用for循环时,Python会自动调用对象的__iter__方法获取迭代器对象,并依次调用其__next__方法获取每个元素,直到所有元素都被遍历完毕。
__next__方法用于返回迭代器中的下一个元素。如果没有下一个元素,则应该引发StopIteration异常。在每次调用__next__方法时,迭代器对象应该更新其内部状态,以便在下一次调用__next__方法时返回下一个元素。
下面是一个使用__iter__和__next__方法的例子,展示了如何实现一个简单的迭代器对象,用于遍历一个数字范围内的所有奇数:
class OddIterator: def __init__(self, start, stop): self.start = start if start % 2 == 1 else start + 1 self.stop = stop if stop % 2 == 1 else stop - 1 self.current = self.start def __iter__(self): return self def __next__(self): if self.current > self.stop: raise StopIteration result = self.current self.current += 2 return resultit = OddIterator(1, 10)# 使用for循环遍历迭代器中的所有元素for x in it: print(x) # 输出: 1 3 5 7 9
在上面的例子中,我们实现了一个OddIterator类,用于遍历一个数字范围内的所有奇数。在__init__方法中,我们初始化了迭代器的起始值、结束值和当前值。在__iter__方法中,我们直接返回了迭代器对象自身,因为OddIterator类本身就是一个迭代器对象。在__next__方法中,我们先判断是否已经遍历到了范围内的最后一个奇数,如果是,则引发StopIteration异常。否则,我们返回当前值,并将当前值增加2,以便下一次调用__next__方法返回下一个奇数。
需要注意的是,在实现__next__方法时,我们需要将当前值更新为下一个奇数,以便下一次调用__next__方法能够正确返回下一个元素。此外,在for循环中遍历迭代器对象时,如果迭代器已经遍历到了最后一个元素,则会自动捕获StopIteration异常,并终止循环。
标签:
相关阅读
-
全球热门:Python面向对象编程-魔术方法-...
在Python面向对象编程中,魔术方法是一种特殊的方法,其名称以双下... -
世界讯息:孔内自生莫来石棒晶强化钛酸...
1、《孔内自生莫来石棒晶强化钛酸铝多孔支撑体的机理研究》是依托山... -
全球观热点:常州移动5G用户突破200万
5G网络建设快速推进,带动5G移动终端用户数稳步增长。截至4月上旬,... -
天天最资讯丨孔径测量仪器
1、孔径测量仪器因测量的材料的不同而分为很多类,主要分为两大类,... -
环球新动态:怎样制作表格并打印_怎样制...
1、制作表格建建议用Excel,很方便的。2、1 新建一个excel文件。3... -
血脂高吃什么水果和蔬菜帮助减脂_血脂高...
1、一般来说,轻度的(在正常值之上,但不到疾病诊断标准),主要以... -
2023五一假期长沙地铁运营时间(附运营时刻表)
2023五一假期长沙地铁运营时间更新时间:2023年4月21日五一期间,如... -
2023大涌镇各村社区免费两癌筛查通知汇...
2023大涌镇各村社区免费两癌筛查通知汇总(持续更新)1:叠石村详情... -
时讯:微生物除臭剂商品报价动态(2023-...
交易商品牌 产地交货地最新报价微生物除臭剂 99%含量浓缩型河南清... -
北京欢乐谷门票多少钱一张(价格表+优惠...
北京欢乐谷门票多少钱一张?票种价格全价票¥299(高峰日:¥339)青少... -
环球消息!新鲜的大鼠尾鱼哪里掉 新鲜...
今天来聊聊关于新鲜的大鼠尾鱼哪里掉,新鲜的大鼠尾鱼在哪钓的文章... -
天天动态:阿根廷总统费尔南德斯宣布不参...
阿根廷总统选举将于10月22日举行,8月13日将举行全民强制参加的初选 -
全球热门:Python面向对象编程-魔术方法-...
在Python面向对象编程中,魔术方法是一种特殊的方法,其名称以双下... -
世界讯息:孔内自生莫来石棒晶强化钛酸...
1、《孔内自生莫来石棒晶强化钛酸铝多孔支撑体的机理研究》是依托山... -
前沿热点:《DOTA2》7.33更新后 Steam...
昨天《DOTA2》上线了“大展宏图”大更新(7 33),对地图、英雄、... -
《黑暗逃生》开发商World Makers获4百...
游戏开发工作室WorldMakers在最近一轮融资中获得了400万美元的投资... -
【独家】Focus财报:《原子之心》销量超...
今日(4月22日),知名游戏发行商Focus公布2023财年财报,该出版商... -
全球观热点:常州移动5G用户突破200万
5G网络建设快速推进,带动5G移动终端用户数稳步增长。截至4月上旬,... -
虚幻5.1的秀场《不朽者传奇》游戏内环境展示
EA和AscendantStudio发布了《不朽者传奇》的更多视频,展示了这款第... -
《死亡岛2》PC版性能表现分析:画面上佳...
DeepSilver新作《死亡岛2》现已通过Epic游戏商城面向PC平台发售。本... -
天天最资讯丨孔径测量仪器
1、孔径测量仪器因测量的材料的不同而分为很多类,主要分为两大类,... -
环球新动态:怎样制作表格并打印_怎样制...
1、制作表格建建议用Excel,很方便的。2、1 新建一个excel文件。3... -
传索尼PlayStation发布会可能在5月召开
本月早些时候,游戏记者JeffGrubb爆料索尼计划在“夏日游戏节(Summ... -
环球今日讯!育碧携《孤岛惊魂6》《彩虹...
育碧继续回归Steam,旗下大作《孤岛惊魂6》《极限国度》《彩虹六号... -
世界观察:《DOTA2》7.33地形介绍:肉山...
在DOTA2大展宏图7 33游戏性更新中,地图扩大了40%,游戏地形发生了... -
血脂高吃什么水果和蔬菜帮助减脂_血脂高...
1、一般来说,轻度的(在正常值之上,但不到疾病诊断标准),主要以... -
2023五一假期长沙地铁运营时间(附运营时刻表)
2023五一假期长沙地铁运营时间更新时间:2023年4月21日五一期间,如... -
2023大涌镇各村社区免费两癌筛查通知汇...
2023大涌镇各村社区免费两癌筛查通知汇总(持续更新)1:叠石村详情... -
时讯:微生物除臭剂商品报价动态(2023-...
交易商品牌 产地交货地最新报价微生物除臭剂 99%含量浓缩型河南清... -
北京欢乐谷门票多少钱一张(价格表+优惠...
北京欢乐谷门票多少钱一张?票种价格全价票¥299(高峰日:¥339)青少... -
环球消息!新鲜的大鼠尾鱼哪里掉 新鲜...
今天来聊聊关于新鲜的大鼠尾鱼哪里掉,新鲜的大鼠尾鱼在哪钓的文章... -
天天动态:阿根廷总统费尔南德斯宣布不参...
阿根廷总统选举将于10月22日举行,8月13日将举行全民强制参加的初选 -
乱世逐鹿全区域重宝线索位置汇总
乱世逐鹿游戏中有很多的重宝,地图的每个区域都游戏一定的重宝,需要 -
全球报道:章雯淇的老公是谁 章雯淇
今天来聊聊关于章雯淇的老公是谁,章雯淇的文章,现在就为大家来简... -
世界观点:《富甲天下4》上架Steam 5月...
光谱资讯《富甲天下4》宣布将于5月11日登陆Steam,目前游戏已上架St... -
【速看料】《西游梗传》第77关手扰现正...
本次为大家带来《西游梗传》第77关手扰现正型通关攻略的详细讲解,感 -
全球消息!《霓虹序列》雷霆序列的融合...
融合序列是《霓虹序列》游戏中一种非常强力的序列词条,由两种属性... -
《霓虹序列》莉莉娅角色攻略,莉莉娅的...
莉莉娅是《霓虹序列》中的初始角色,武器是机械长刀,定位为近战型... -
世界快资讯:《霓虹序列》暴风序列的融...
融合序列是《霓虹序列》游戏中一种非常强力的序列词条,由两种属性... -
《向往的生活》嘉宾好感度怎么提升 嘉...
向往的生活嘉宾好感度提升需要使用嘉宾好感道具,好感度提升后可以一 -
《霓虹序列》翠毒序列的融合序列攻略,...
融合序列是《霓虹序列》游戏中一种非常强力的序列词条,由两种属性... -
文字脑洞无良商家攻略
文字脑洞无良商家这一关卡的要求就是帮旅客降到200元合理消费,原价 -
世界时讯:文字玩出花看图说话通关攻略
在文字玩出花游戏中有很多关卡,其中“看图说话”关卡具体内容是什么... -
品味春天,看“舌尖上”的产业焕发盎然生机
雨生百谷,万物舒展。春日的大街小巷,人们品新茶、吃鲜饼、尝野菜... -
【全球新要闻】启明星辰主板再融资审核...
机会报从深圳证券交易所网站获悉,启明星辰(002439)主板再融资(... -
全球观察:股票行情快报:青农商行(002...
截至2023年4月21日收盘,青农商行(002958)报收于2 86元,下跌0 69... -
环球观察:乘分布式光伏“东风” 天合...
中证网讯(记者罗京)4月21日晚,天合光能发布公告称,根据天合光能... -
世界观察:个税app注册不了怎么办_个税a...
1、国家来税务局是开不起腾讯源云的短信平台还是开不起阿里云短信平... -
我州召开打击突出涉毒违法犯罪攻坚部署会
●记者吴富水雷肖本报讯4月21日,我州召开打击突出涉毒违法犯罪攻坚... -
环球快讯:男足球星巨大失误送分,网友集...
刘殿座上个赛季加盟之后其实表现不错的,但是不知道为什么新赛季开... -
全球今亮点!诺龙技术2022年净利426.33...
诺龙技术2022年净利426 33万同比增长2 56%财务费用比上年同期增加... -
潭酒_关于潭酒介绍
1、潭酒,出于仙潭酒厂,历史悠久,名贯古今。2、据古蔺县志记载:... -
天天要闻:为“四敢”提供系统保障
真正让干部敢为、地方敢闯、企业敢干、群众敢首创成为全社会的价值... -
全球微动态丨宝马mini被指区别对待中外...
4月20日,有网友爆料称,在上海车展宝马mini展台,工作人员发放冰激... -
System76发布Adder WS等Linux笔记本电脑
与此同时,新款BonoboWS是该公司迄今为止功能最强大的笔记本电脑,... -
股票行情快报:海康威视(002415)4月21...
截至2023年4月21日收盘,海康威视(002415)报收于39 72元,下跌4 5... -
微信认证有什么好处与坏处_微信认证有什...
1、微信通公众平台提供化平台更喜欢双向沟通交流平台任何发布任何自... -
微头条丨美媒:美国枪支暴力致信任危机...
海外网4月21日电据美联社20日报道,美国近期频繁发生民众因走错路、... -
环球观点:退房协议合同范本(47篇)
退房协议合同范本第1篇出卖人(甲方):____有限公司买受人(乙方):__... -
【世界独家】太平公主和上官婉儿是什么...
上官婉儿曾依附在太平公主门下,是太平公主的下属。上官婉儿(664年... -
织金公安多措并举 强化民爆物品监管
(通讯员杨妙刘珊)近日,织金县公安局治安大队多措并举,深入辖区各... -
全球新消息丨联合水务(603291)盘中异...
2023年04月21日13时40分,联合水务(603291)股票出现波动,股价大... -
环球信息:黄忆慈现在读几年级 黄忆慈的...
今天来聊聊关于黄忆慈现在读几年级,黄忆慈的学习成绩的文章,现在... -
天天看热讯:日系角色扮演《循环8 降...
发行商XSEEDGames和开发商Marvelous工会了《循环8降神》的全新预告... -
天天简讯:意大利葡萄酒产区的特点是什么?
每个产区都有自己的个性和葡萄品种。皮埃蒙特是意大利最好的红酒产... -
天天热讯:形容眼睛的成语或者优美句子 ...
今天来聊聊关于形容眼睛的成语或者优美句子,形容眼睛的成语的文章... -
《完美音浪》虽然好评如潮 但并不赚钱
游戏行业知名舅舅党JeffGrubb爆料,微软好评如潮游戏《完美音浪(Hi... -
环球信息:传闻:《装甲核心6》4月28日将...
自去年12月公布以来,FromSoftware很少透露关于《装甲核心6》的消息... -
焦点要闻:dnf素喃怎么开启_素喃秘影长剑
刷图:巨剑PK(改版):巨剑紫:20千年玄铁25梅兰莎的灵犀长剑2 -
【环球新视野】潘季驯墓在哪里_潘季驯
1、先说结论捏佛与潘季驯治水的不同是正水坝,潘季训是明代著名的水... -
2023天津1分钱乘公交活动适用公交线路
》》》2023天津1分钱乘公交活动适用公交线路如下图所示:活动内容:... -
全球实时:关于加班费的法律法规
一、关于加班费的法律法规关于加班费的法律法规如下:《劳动法》第... -
全球快消息!「大国基理」渝中群防,构...
中新网重庆4月21日电(左雨晴)四月的重庆,有这样一道亮丽的风景:身... -
当前讯息:电动超跑天花板?!《王牌竞速...
Evija正是莲花在迈入电气化时代之际推出的挣脱桎梏之作!它以可上路 -
全球最资讯丨EA《漫威钢铁侠》很可能是...
EAMotive工作室叙事总监近日在Twitter上分享了一则《漫威钢铁侠》游... -
环球观焦点:汉字找茬王开朗杨玉环攻略
汉字找茬王是最近抖音上很火的益智烧脑解密类休闲小游戏,游戏关卡设 -
原神3.6新世界任务在哪里接
原神3 6版本已经开启有一段时间了,3 6版本中会有很多的世界任务需要 -
全球消息!精锐勇武神威专属,帮派精英联...
为了让精锐组、勇武组和神威组的玩家小伙伴拥有更多的玩法选择,更好 -
隔离区丧尸末日生存游戏怎么洗点
本次为大家带来隔离区丧尸末日生存游戏怎么洗点的详细讲解,感兴趣的 -
天利科技股东户数增加1.68%,户均持股18...
天利科技最新股东户数1 45万户,低于行业平均水平。公司户均持有流... -
苏文电能2022年度分配预案:拟10送转2股...
4月20日苏文电能发布2022年度分配预案,拟10转增2派3 5元(含税)... -
全球头条:刚刚,一线城市“核弹级”调...
首先二手房指导价被称为“核弹级”政策,其次深圳几乎是最后一个还... -
通讯!csgo官网开箱在哪里开 csgo官网...
,很多喜欢csgo的伙伴都知道开箱是非常随机的游戏。你可能会戴上非... -
csgo开箱网有哪些 国内csgo好用的开箱网站一览
,很多喜欢csgo开箱的合作伙伴都很担心开箱平台是否安全。今天小编... -
全球微资讯!CSGO最可信的开箱网站有哪...
,很多喜欢csgo的伙伴都知道开箱是非常随机的游戏。你可能会戴上非... -
环球观焦点:CSGO开箱对战最多人的平台...
,很多喜欢csgo开箱的合作伙伴都很担心开箱平台是否安全。今天小编... -
每日速递:CSGO抽奖平台出金概率大吗 C...
,很多喜欢csgo的伙伴都知道开箱是非常随机的游戏。你可能会戴上非... -
《被虐的诺艾尔》DLC“FINAL PART1” ...
《被虐的诺艾尔》的最新DLC“FINALPART1”将于4月24日上线Steam平台... -
焦点速看:炎龙传说3炽凤技能_炎龙传说3炽凤
1、龙传说2三度冲击全过程与攻略,附加BOSS炎龙:第一主角,会各种龙... -
全球速递!隔离区丧尸末日生存新手玩法...
《隔离区-丧尸末日生存》这款游戏对于新手玩家来说并不算友好,主要... -
世界实时:潜行还是射爆?轻肉鸽潜行动...
由VonaSoft制作,AnotherIndie发行的潜行动作游戏《伪信号(FakeSign... -
每日快讯!csgo哪里买钥匙最便宜 csgo十...
,很多喜欢csgo的伙伴都知道开箱是非常随机的游戏。你可能会戴上非... -
世界焦点!csgo开箱网站哪个最好 爆率...
,今天小编整理了爆率透明出金率高的开箱网推荐。所有箱子的爆炸率... -
今日讯!2023NBPL春季赛第四双周 三排D...
2023NBPL春季赛第四双周三排DAY1第一局快报出炉,让我们一起来看看吧! -
《阴阳师》与TV动画《银魂》联动 4月...
网易手游×TV动画《银魂》联动活动4月26日正式开启,联动限定SSR坂... -
全球观天下!TGA宣布举办10周年音乐会 ...
TGA官方宣布将于6月25日在好莱坞露天剧场管弦乐团举办10周年纪念音... -
世界通讯!腾讯胜诉!《王者荣耀》代练...
今日(4月21日)消息,腾讯诉《王者荣耀》代练公司不正当竞争案二审... -
哪个CSGO开箱网站最好 爆率透明出金率...
,今天小编整理了爆率透明出金率高的开箱网推荐。所有箱子的爆炸率... -
外媒确认《死亡岛2》 将采用Denuvo防篡改技术
《死亡岛2》将于21日推出,根据外媒DSOGaming透露,这款游戏也使用... -
make friends什么意思_make friends
1、HowtoMakeFriendsEveryoneneedsfriends Afriendcang -
老牌csgo开箱网站推荐 十大csgo老牌开...
,今天小编就给大家带来十大csgo老牌开箱平台一览。注册后就可以领... -
焦点资讯:csgo钥匙在哪里买便宜 csgo...
,今天小编整理了csgo钥匙多少钱一把。所有箱子的爆炸率都是透明的... -
全球热文:博迈科:目前公司场地产能充...
同花顺金融研究中心4月21日讯,有投资者向博迈科提问,据报道,贵公... -
天天速读:CCTV5直播冠军赛:世界第一樊...
此前的WTT新乡冠军赛,樊振东曾经与李尚洙在男子单打1 8决赛有过交... -
天天滚动:一季度实际使用外资近4100亿元
一季度实际使用外资近4100亿元---经济日报北京4月20日讯(记者冯其... -
科大讯飞:一季度净亏损5785万元,上年...
科大讯飞公告,一季度净亏损5785万元,上年同期净利润1 1亿元;基... -
即时看!《塞尔达传说;王国之泪》容量...
近日,Switch日服eShop的《塞尔达传说;王国之泪》商店页面进行了更... -
每日消息!最火的奇迹私服版本推荐 热门...
,最火的奇迹手游是什么?很多喜欢玩奇迹手游的小伙伴都不知道现在最... -
DEAD ISLAND 2现已推出粉碎加洲梦,血染洛惨矶
洛「惨」机,加洲,2023年4月21日|在游戏正式发表的八个月后,Dambu... -
天天消息!生化危机4重制版第十二章豪华...
《生化危机4:重制版(ResidentEvil4)》中的第十二章里面是可以收... -
全球今亮点!腾讯起诉《王者荣耀》代练...
快科技今日(4月21日)消息,腾讯诉《王者荣耀》代练公司不正当竞争... -
环球播报:超变态9999阶奇迹手游推荐 新...
,奇迹手游版本最火的是哪个?喜欢玩奇迹手游的小伙伴非常多,今天小...