Python如何进行反向迭代以及如何实现反向迭代

Jackey Python 1,715 次浏览 , 没有评论
# 如何进行反向迭代以及如何实现反向迭代
l = [1, 2, 3, 4, 5]
# 这种方式改变了原列表
# l.reverse()
# print(l)
lNew = l[::-1]
print(lNew)
print(l)
for x in reversed(l):
    print(x)


class FloatRange:
    def __init__(self, start, end, step=0.1):
        self.start = start
        self.end = end
        self.step = step

    def __iter__(self):
        t = self.start
        while t <= self.end:
            yield t
            t += self.step

    def __reversed__(self):
        t = self.end
        while t >= self.start:
            yield t
            t -= self.step


# 正向迭代
for x in FloatRange(1.0, 4.0, 0.5):
    print(x)

# 反向迭代
for x in reversed(FloatRange(1.0, 4.0, 0.5)):
    print(x)

 

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Go