給個(gè)很熟悉的例子
>>> for i in 'gaoyx':
print(i)
g
a
o
y
x
>>>
迭代就是循環(huán)的意思穴张,用來循環(huán)的容器就是迭代器。
關(guān)于迭代器有2個(gè)內(nèi)置函數(shù)蚪缀,便是 iter()
和 next()
一個(gè)容器對(duì)象調(diào)用 iter() 就會(huì)返回他的迭代器疹启,調(diào)用next()就返回下一個(gè)值,如果沒有值可以返回了煎殷,python就會(huì)報(bào)一個(gè) StopIteration 異常
例如:
>>> string = 'Gaoyx'
>>> it = iter(string) #這里的 it 就是一個(gè)迭代器
>>> next(it)
'G'
>>> next(it)
'a'
>>> next(it)
'o'
>>> next(it)
'y'
>>> next(it)
'x'
>>> next(it)
Traceback (most recent call last):
File "<pyshell#134>", line 1, in <module>
next(it)
StopIteration
>>>