在python中,列表、元組、字典和集合都是可迭代的對象。它們是可迭代的容器,您可以從中獲取迭代器(Iterator)。所有這些對象都有用於獲取迭代器的 iter() 方法:
iter()方法創建了一個迭代器,你可以用next()方法逐一把迭代器中的元素給取出來。一旦取值完畢,這個迭代器也就失效。
mytuple = ("apple", "banana", "cherry") myit = iter(mytuple) print(next(myit)) print(next(myit)) print(next(myit))
#這段代碼,等同於下面的for循環,for循環其實就是創建了一個迭代器,並且為每次循環自動執行netx()方法
for myit in mytuple:
print(myit)
輸出的結果為:
apple
banana
cherry
class MyNumbers:
def __iter__(self):
self.a = 1
return self
def __next__(self):
if self.a <=200:
x = self.a
self.a += 1
return x
else:
raise StopIteration
myclass = MyNumbers()
myiter = iter(myclass)
for x in myiter:
print(x)
StopIteration 結束迭代循環