Python 停止迭代
StopIteration
為了防止迭代無限進行,我們可以使用 StopIteration
語句。
在 __next__()
方法中,我們可以新增一個終止條件,如果迭代達到指定次數,則引發錯誤。
示例
在迭代 20 次後停止
class MyNumbers
def __iter__(self)
self.a = 1
return self
def __next__(self)
if self.a <= 20
x = self.a
self.a += 1
return x
else
raise StopIteration
myclass = MyNumbers()
myiter = iter(myclass)
for x in myiter
print(x)
自己動手試一試 »