Python迭代

  若是給定一個list或tuple,咱們能夠經過for循環來遍歷這個list或tuple,這種遍歷咱們稱爲迭代(Iteration)。函數

  在Python中,迭代是經過for...in來完成的,而不少語言好比C語言,迭代list是經過下標完成的。spa

  Python的for循環抽象程度要高於C的for循環,由於Python的for循環不只能夠用在list或tuple上,還能夠用在其餘可迭代對象上。list這種數據類型雖然有下標,但不少其餘數據類型是沒有下標的,可是,只要是可迭代對象,不管有無下標,均可以迭代。code

  判斷一個對象是否可迭代對象,能夠經過collections模塊的Iterable類型判斷:對象

>>> from collections import Iterable
>>> isinstance('abc', Iterable)
True
>>> isinstance([1, 2, 3], Iterable)
True
>>> isinstance(123, Iterable)
False

 

 

  若是要對list實現相似Java那樣的下標循環,Python內置的enumerate函數能夠把一個list變成索引-元素對,這樣就能夠在for循環中同時迭代索引和元素自己:blog

>>> for i, value in enumerate(['A', 'B', 'C']):
...     print(i, value)
...
0 A
1 B
2 C
相關文章
相關標籤/搜索