您好,登錄后才能下訂單哦!
這篇“python如何遍歷可迭代對象”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“python如何遍歷可迭代對象”文章吧。
迭代(遍歷)就是按照某種順序逐個訪問對象中的每一項。
Python中有很多對象都是可以通過for語句來直接遍歷的,例如list、string、dict等,這些對象都是可迭代的,被稱為可迭代對象。
可以將可迭代對象想象成一個容器,里面存放了有限個元素,并且每個元素都可以從中獲取出來。那么這個容器就是可迭代的,這個容器就是可迭代對象。
所有的可迭代對象都需要實現(xiàn)__iter__方法,該方法就是用于當(dāng)我們在循環(huán)時將可迭代對象轉(zhuǎn)換成迭代器的。
迭代器是可迭代對象的一個子集。是一個可以記住遍歷的位置的對象,它與列表、元組、集合、字符串這些可迭代對象的區(qū)別就在于__next__()方法的實現(xiàn)。也就是通過該方法可以一個個的將元素取出來。即遍歷可迭代對象的方法就為迭代器。
迭代器支持__iter__()和__next__()方法。其中:iter()方法返回迭代器對象本身,而可迭代對象的該方法則返回其迭代器。
next()方法返回容器的下一個元素,在結(jié)尾時引發(fā)StopIteration異常。
對迭代對象直接for循環(huán)遍歷
li=[1,2,3,4] li2=[5,6,7,8] for i in li2: li.append(i) print(li)
[1, 2, 3, 4, 5, 6, 7, 8]
這種方法可以使用數(shù)組中常用的alist[i]來遍歷列表
li=[1,2,3,4] li2=[5,6,7,8] for i in range(len(li2)): li.append(li2[i]) print(li)
[1, 2, 3, 4, 5, 6, 7, 8]
這種方法是利用迭代器的思想,迭代器是一個可以記住遍歷的位置的對象,迭代器有兩個基本的方法:iter() 和 next()。
使用iter(iterable)即可把可迭代對象轉(zhuǎn)換成迭代器;使用next(iterator)來獲取迭代器的下一個值
li3 = [5,6,7,8] for i in iter(li3): print(i)
5
6
7
8
當(dāng)既需要遍歷索引同時需要遍歷元素的時候,可以考慮使用enumerate函數(shù),enumerate函數(shù)接受一個可遍歷的對象,如列表、字符串等
li4 = ['C','C#','JAVA'] for i,li4 in enumerate(li4): print(i+1,li4)
1 C
2 C#
3 JAVA
以上就是關(guān)于“python如何遍歷可迭代對象”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。