首页 > 其他 > 详细

正向迭代器和反向迭代器实现

时间:2021-05-31 21:45:17      阅读:35      评论:0      收藏:0      [点我收藏+]

一、正向迭代器实现__iter__方法

二、反向迭代器实现__reversed__方法

三、实例:

from decimal import Decimal

class FloatRange:
def __init__(self, a, b, step):
self.a = Decimal(str(a))
self.b = Decimal(str(b))
self.step = Decimal(str(step))

def __iter__(self):
t = self.a
while t <= self.b:
yield t
t += self.step

def __reversed__(self):
t = self.b
while t >= self.a:
yield t
t -= self.step


fr = FloatRange(3.0, 4.0, 0.2)
print(fr, reversed(fr))
for i in fr:
print(i)
print("*"*20)

for x in reversed(fr):
print(x)

正向迭代器和反向迭代器实现

原文:https://www.cnblogs.com/inflame/p/14831956.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!