转自:https://blog.csdn.net/liweibin1994/article/details/77374854
当一个类实现了__iter__()和__next__()之后,它就是一个可迭代对象,
class test(): def __init__(self,data=1): self.data = data def __iter__(self): return self def __next__(self): if self.data > 5: raise StopIteration else: self.data+=1 return self.data for item in test(3): print(item)
通过test(3)获取了一个可迭代器,item是循环调用__next__()来实现的。
原文:https://www.cnblogs.com/BlueBlueSea/p/14617625.html