Python高级编程-如何实现反向迭代?

来源:互联网 发布:淘宝客小猪优惠券 编辑:程序博客网 时间:2024/06/05 04:02
class Flotrange:    def __init__(self,start,end,step=0.5):        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 Flotrange(1.0,6.0):#for x in reversedFlotrange(1.0,6.0)        print (x)>>> l=[1,2,3,4,5,6]>>> l.reverse()>>> l[6, 5, 4, 3, 2, 1]>>> l[::-1][1, 2, 3, 4, 5, 6]>>> l=[1,2,3,4,5,6]>>> l[::-1][6, 5, 4, 3, 2, 1]>>> reversed(l)<list_reverseiterator object at 0x03066590>>>> iter(l)<list_iterator object at 0x034B5C70>>>> for x in reversed(l):    print (x)    654321>>>

阅读全文
0 0
原创粉丝点击