Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ArrIter:
- def __init__(self, arr):
- self.i = 0
- self.j = 0
- self.arr = arr
- def __next__(self):
- # пока не дошли до конца arr
- while self.i < len(self.arr):
- if self.j < len(self.arr[self.i]):
- # следуюший элемент i-той ячейки
- self.j += 1
- return self.arr[self.i][self.j-1]
- else:
- # следующая ячейка
- self.j = 0
- self.i += 1
- raise StopIteration
- class Array:
- def __init__(self):
- self.arr = [[1],[],[3,5],[7]]
- def __iter__(self):
- return ArrIter(self.arr)
- a = Array()
- for i in a:
- print(i)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement