Python中的迭代器是一個可以記住遍歷位置的對象。迭代器從集合第一個元素開始訪問,直到所有的元素被訪問完結束,迭代器只能向前不能後退。
方法:
內置迭代器iter():返回對象本身,是for語句使用迭代器的要求。
iter(iterable)
iter(callable,sentinel)#傳入函數,截止元素(不包含)
next():返回容器中下一個元素,到末尾後會引發StopIteration異常。
e.g.1
list=[1,2,3,4]
it=iter(list)
print (next(it))
for x in it:
print(x)#1 2 3 4
e.g.2
class Counter:
def __init__(self,x=0):
self.x=0
counter=Counter()
def used_iter():
counter.x+=2
return counter.x
for i in iter(used_iter,12):
print(i)#2 4 6 8 10