新聞中心
一、迭代器介紹

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、涇縣網(wǎng)站維護(hù)、網(wǎng)站推廣。
迭代器(Iterator):迭代器可以看作是一個(gè)特殊的對(duì)象,每次調(diào)用該對(duì)象時(shí)會(huì)返回自身的下一個(gè)元素,從實(shí)現(xiàn)上來看,一個(gè)迭代器對(duì)象必須是定義了__iter__()方法和next()方法的對(duì)象。
Python的Iterator對(duì)象表示的是一個(gè)數(shù)據(jù)流,可以把這個(gè)數(shù)據(jù)流看做是一個(gè)有序序列,但我們卻不能提前知道序列的長(zhǎng)度,所以Iterator的計(jì)算是惰性的,只有在需要返回下一個(gè)數(shù)據(jù)時(shí)它才會(huì)計(jì)算;Iterator對(duì)象可以被next()函數(shù)調(diào)用并不斷返回下一個(gè)數(shù)據(jù),直到?jīng)]有數(shù)據(jù)時(shí)拋出StopIteration錯(cuò)誤;所有的Iterable可迭代對(duì)象均可以通過內(nèi)置函數(shù)iter()來轉(zhuǎn)變?yōu)榈鱅terator。 __iter__( )方法是讓對(duì)象可以用for … in循環(huán)遍歷時(shí)找到數(shù)據(jù)對(duì)象的位置,next( )方法是讓對(duì)象可以通過next(實(shí)例名)訪問下一個(gè)元素。除了通過內(nèi)置函數(shù)next調(diào)用可以判斷是否為迭代器外,還可以通過collection中的Iterator類型判斷。如: isinstance(’’, Iterator)可以判斷字符串類型是否迭代器。注意: list、dict、str雖然是Iterable,卻不是Iterator。 迭代器優(yōu)點(diǎn):節(jié)約內(nèi)存(循環(huán)過程中,數(shù)據(jù)不用一次讀入,在處理文件對(duì)象時(shí)特別有用,因?yàn)槲募彩堑鲗?duì)象)、不依賴索引取值、實(shí)現(xiàn)惰性計(jì)算(需要時(shí)再取值計(jì)算);
二、舉例:用迭代器的方式訪問文件
for line in open(“test.txt”):print(line)
關(guān)于python怎么使用迭代器,可以點(diǎn)擊查看。
(推薦操作系統(tǒng):windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。)
名稱欄目:創(chuàng)新互聯(lián)Python教程:python迭代器是什么
當(dāng)前路徑:http://www.dlmjj.cn/article/djgejgd.html


咨詢
建站咨詢
