具有收益的迭代器

问题描述

我正在研究迭代器和生成器的概念。 我知道Yield使函数可迭代,因为所有生成器基本上都是迭代器,但是当我在类中将其与 iter 方法一起使用时,Yield如何使我的类可迭代。 我不是要返回自己(即自我)。 任何帮助将不胜感激 谢谢

class Reverse:

    def __init__(self,list):
        self.list = list
        self.curr_index = len(self.list) -1
        #print (self.list is list)
    
    def __str__(self):
        #length = len(self.list)
        return "List is of {} object".format(self.curr_index)

    def __iter__(self):
        print ("Calling Iter")
        while self.curr_index >=0:
            yield self.list[self.curr_index]
            self.curr_index -=1
    
a = [1,2,3,4,5,10,11,12,13]

for j in Reverse(a):
    print (j)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)