python迭代

高洛峰
高洛峰原創
2016-11-19 16:27:221386瀏覽

python中我們可以對list、tuple、dict或其他可迭代的物件進行迭代從而遍歷取出各個元素。

如何判斷一個物件是不是一個可迭代物件

判斷一個物件是不是可迭代物件可以使用isinstance判斷是否為collections模組的Iterable型別。
例如:

from collections import Iterable

isinstance('hello world',Iterable) # True
isinstance([1,2,3,4],Iterable) #True
isinstance(231,Iterable) #False

List tuple string 循環

fruits = ['apple','banana','peal','water melon']
for fruit in fruits:
    print fruit

迭代的時候,在獲取的值的同時,又想獲取到下標,該怎麼做?
我們可以利用python中內建函數enumerate()函數將list、tuple、string等組裝成一個帶有索引的enumerate object。

for index,fruit in enumerate(fruits):
    print index,fruit

Dict 迭代

Dict字典本身帶有key和value。

利用for...in...迭代的時候,預設是key迭代。

Dict 迭代
Dict字典本身带有key和value。
利用for...in...迭代的时候,默认是key迭代。

輸出結果將是:

banana
apple
peal

那麼該如果讓它是value迭代呢?

我們可以使用字典自身的itervalues函數。

for value in d.itervalues():
    print value

在迭代的時候我們既想要key又想要value,該怎麼辦?

for key,value in d.iteritems():
    print key,value


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn