next在python中返回迭代器的實例方法
在python中有不少對于集合迭代的方法,我們把程序運行后的再一次循環(huán)叫做迭代,每一次都循環(huán)都可以看做是一次迭代。那么在迭代結(jié)束后,我們需要使用next函數(shù)來返回迭代器中。接下來我們就next的用法、參數(shù)、返回值、在python中返回迭代器的實例給大家進行展示。
1.next()用法
next(iterator[, default])
2.參數(shù)說明
iterable -- 可迭代對象
default -- 可選,用于設(shè)置在沒有下一個元素時返回該默認值,如果不設(shè)置,又沒有下一個元素則會觸發(fā) StopIteration 異常。
3.返回值
返回下一個項目。
4.實例
class test():
def __init__(self,data=1):
self.data = data
def __next__(self):
if self.data > 5:
raise StopIteration
else:
self.data+=1
return self.data
t = test(3)
for i in range(3):
print(t.__next__())
輸出:
4
5
6
Python迭代器的用法
迭代器的用法:
首先說兩個概念,一個是可迭代的對象,一個是迭代器對象,兩個不同
可迭代的(Iterable):就是可以for循環(huán)取數(shù)據(jù)的,比如字典、列表、元組、字符串等,不可使用next()方法。
迭代器(Iterator),也是可以依次迭代取出數(shù)據(jù)的對象,在內(nèi)存空間是這樣存儲的:<list_iterator object at 0x01E35770>占用內(nèi)存小,并且可以使用next()方法依次取數(shù)據(jù)
可以使用isinstance()方法來判斷一個對象是可迭代對象還是迭代器對象
比如:
>>> a = [x for x in range(3)] #生成一個列表 >>> from collections import Iterable #導(dǎo)入Iterable模塊 >>> isinstance(a,Iterable) #使用isinstance(“”,Iterable)判斷是否是可迭代的 True #返回True >>> from collections import Iterator #導(dǎo)入Iterator模塊 >>> isinstance(a,Iterator) #使用isinstance(“”,Iterator)判斷是否是迭代器對象 False #返回False
從上面的結(jié)果可以看出來,列表是一個可迭代的對象,但是不是迭代器,同樣的字典,元組,字符串也不是迭代器,另外,數(shù)字既不是迭代器對象,也不是可迭代的對象。
到此這篇關(guān)于next在python中返回迭代器的實例方法的文章就介紹到這了,更多相關(guān)next如何在python中返回迭代器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)隨機劃分圖片數(shù)據(jù)集的示例代碼
這篇文章主要為大家詳細介紹了如何通過Python實現(xiàn)隨機將圖片與標注文件劃分為訓(xùn)練集和測試集,文中的示例代碼簡潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-05-05
tensorflow 實現(xiàn)自定義layer并添加到計算圖中
今天小編就為大家分享一篇tensorflow 實現(xiàn)自定義layer并添加到計算圖中,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
使用python和yolo方法實現(xiàn)yolo標簽自動標注
本文介紹了基于YOLOv10的自動標注方法,從初階的固定標注到高階的基于YOLO檢測結(jié)果的自動標注,兩者相比,高階方法顯著提高了標注的準確性,并減少了人工操作的時間,</P><P>2024-11-11
打印tensorflow恢復(fù)模型中所有變量與操作節(jié)點方式
這篇文章主要介紹了打印tensorflow恢復(fù)模型中所有變量與操作節(jié)點方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
詳解Python中的分支和循環(huán)結(jié)構(gòu)
這篇文章主要介紹了Python中的分支和循環(huán)結(jié)構(gòu),本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-02-02
pytorch使用voc分割數(shù)據(jù)集訓(xùn)練FCN流程講解
這篇文章主要介紹了pytorch使用voc分割數(shù)據(jù)集訓(xùn)練FCN流程,圖像分割發(fā)展過程也經(jīng)歷了傳統(tǒng)算法到深度學(xué)習(xí)算法的轉(zhuǎn)變,傳統(tǒng)的分割算法包括閾值分割、分水嶺、邊緣檢測等等2022-12-12

