python学习(迭代器)简单题目

  1.  
  2. 迭代器练习题

Problem 1: Write an iterator class reverse_iter, that takes a list and iterates it from the reverse direction. 写一个迭代器reverse_iter,输入列表,倒序输出列表元素

解:

#-*-coding:UTF-8-*-
from _pyio import __metaclass__
__metaclass__=type
class reverse_iter:
    def __init__(self,list):
        self.num=len(list)
        self.target=list #list绑定到实例对象target
    def next(self):
        self.num-=1 #num--
        if self.num>=0:
            return self.target[self.num] #返回
        else:
            raise StopIteration()#索引越限,则异常
    def __iter__(self):
        return self

r=reverse_iter([1,2,3,4,5])
for x in r:
    print x

猜你喜欢

转载自blog.csdn.net/dieju8330/article/details/81750342