Python 迭代器
实现一个类,功能是传入一个二维的list,找出每个list中的最大值。
并且可以遍历读取。
首先需要把继承的接口 Iterable,Iterator引入
from collections import Iterable,Iterator
源码
class MyListIterator():
def __init__(self,l):
self.l=l
self.index=0
def getMax(self,lst):
return max(lst)
def next(self):
if self.index==len(self.l):
raise StopIteration
MaxNumber_list=self.l[self.index]
self.index+=1
return self.getMax(MaxNumber_list)
class MyListIterable(Iterable):
def __init__(self,l):
self.l=l
def __iter__(self):
return MyListIterator(self.l)
测试:
for i in MyListIterable([[1,2,3],[4,5,6],[7,8,9]]):
print i
浙公网安备 33010602011771号