這篇文章主要介紹了python迭代器的作用,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)公司從2013年開(kāi)始,先為臺(tái)江等服務(wù)建站,臺(tái)江等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為臺(tái)江企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
python中的迭代器Iterator。
什么是迭代器
迭代器是訪(fǎng)問(wèn)可迭代對(duì)象的工具
迭代器是指用iter(obj)函數(shù)返回的對(duì)象(實(shí)例)
迭代器是指用next(it)函數(shù)獲取可迭代對(duì)象的數(shù)據(jù)
迭代器函數(shù)(iter和next)
iter(iterable)從可迭代對(duì)象中返回一個(gè)迭代器,iterable必須是能提供一個(gè)迭代器的對(duì)象
next(iterator) 從迭代器iterator中獲取下一了記錄,如果無(wú)法獲取下一條記錄,則觸發(fā)stoptrerator異常
說(shuō)明:
1.迭代器只能往前取值,不會(huì)后退
2.用iter函數(shù)可以返回一個(gè)可迭代對(duì)象的迭代器
示例
l = [1,3,5,7] it = iter(1) #讓l提供一個(gè)能訪(fǎng)問(wèn)自己的迭代器 next(it) #1 從迭代器中取值,讓迭代器去獲取l中的一個(gè)元素 next(it) #3 next(it) #5 next(it) #7 next(it) # StopIterable 異常
迭代器的用途:
用迭代器可以依次訪(fǎng)問(wèn)可迭代對(duì)象的數(shù)據(jù)
示例:
#以下用迭代器來(lái)訪(fǎng)問(wèn)l列表中的元素 l = [2,3,5,7] it = iter(l) while True: try: x = next(it) #獲取一個(gè)數(shù)據(jù)并綁定到x print(x) #2,3,5,7 except StopIteration: pass
練習(xí)
有一個(gè)集合: s = {'唐僧','悟空','悟能','悟凈'} 用for語(yǔ)句來(lái)遍歷所有的元素如下; for x in s: print(x) else: print('遍歷結(jié)束') 將上面的for語(yǔ)句改寫(xiě)為while語(yǔ)句和迭代器實(shí)現(xiàn)
s = {'唐僧','悟空','悟能','悟凈'} it = iter(s) try: while True: x = next(it) print(x) except StopIteration: print('遍歷結(jié)束')
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python迭代器的作用內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問(wèn)題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!