# 如何进行反向迭代以及如何实现反向迭代
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)