Python 可迭代對(duì)象 iterable的具體使用
如果給定一個(gè) list 或 tuple,我們可以通過 for 循環(huán)來遍歷這個(gè) list 或 tuple,這種遍歷我們稱為迭代(Iteration)
在 Python 中,迭代是通過 for ... in 來完成的
lists = [1, 2, 3, 4, 5]for i in lists: print(i)可迭代對(duì)象
for 循環(huán)不僅可以用在 list 或 tuple 上,還可以用在其他可迭代對(duì)象上list 這種數(shù)據(jù)類型雖然有下標(biāo),但很多其他數(shù)據(jù)類型是沒有下標(biāo)的,但是只要是可迭代對(duì)象,無論有無下標(biāo),都可以迭代
dicts = { 'a': 1, 'b': 2}for i in dicts: print(i)# 輸出結(jié)果ab如何判斷一個(gè)對(duì)象是否是可迭代對(duì)象?
from collections import Iterablelists = [1, 2, 3, 4, 5]dicts = { 'a': 1, 'b': 2}print(isinstance(lists, Iterable))print(isinstance(dicts, Iterable))print(isinstance({'test'}, Iterable))print(isinstance(1234, Iterable))# 輸出結(jié)果TrueTrueTrueFalseenumerate 函數(shù)
循環(huán)列表的話,默認(rèn)是只返回元素值,如果想同時(shí)拿到元素值和對(duì)應(yīng)的下標(biāo)值呢?enumerate 函數(shù)可以把 list 變成一個(gè) 索引-元素對(duì)的迭代對(duì)象,然后循環(huán)遍歷這個(gè)對(duì)象即可
lists = [1, 2, 3, 4, 5]# 看看是不是迭代對(duì)象print(isinstance(enumerate(lists), Iterable))# 循環(huán)for ind, val in enumerate(lists): print(ind, val)# 輸出結(jié)果True0 11 22 33 44 5多嵌套列表
for x, y in [(1, 1), (2, 4), (3, 9)]: print(x, y)# 輸出結(jié)果1 12 43 9總結(jié)
任何可迭代對(duì)象都可以作用于 for 循環(huán),包括我們自定義的數(shù)據(jù)類型,只要符合迭代條件,就可以使用 for 循環(huán)
到此這篇關(guān)于Python 可迭代對(duì)象 iterable的具體使用的文章就介紹到這了,更多相關(guān)Python 可迭代對(duì)象 iterable內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
