python迭代器自定義類(lèi)的具體方法
迭代器還具有迭代用戶定制類(lèi)別的能力。迭代對(duì)象需要支持兩種方式:_iter__()和next(),前者返回迭代本身,后者返回下一個(gè)元素。
2、實(shí)例class example(object): def __init__(self,num): self.num=num def __iter__(self): return self def __next__(self): if self.num <= 0: raise StopIteration tmp = self.num self.num -= 1 return tmp a = example(3)print(a.__next__())print(a.__next__())print(a.__next__())print(a.__next__())
知識(shí)點(diǎn)擴(kuò)展
python自定義類(lèi)并使用的方法
class Person: def __init__(self, first, middle, last, age): self.first = first; self.middle = middle; self.last = last; self.age = age; def __str__(self): return self.first + ’ ’ + self.middle + ’ ’ + self.last + ’ ’ + str(self.age) def initials(self): return self.first[0] + self.middle[0] + self.last[0] def changeAge(self, val): self.age += valmyPerson = Person(’Raja’, ’I’, ’Kumar’, 21)print(myPerson)myPerson.changeAge(5)print(myPerson)print(myPerson.initials())
運(yùn)行結(jié)果如下:
Raja I Kumar 21Raja I Kumar 26RIK
到此這篇關(guān)于python迭代器自定義類(lèi)的具體方法的文章就介紹到這了,更多相關(guān)python迭代器怎樣自定義類(lèi)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 解決Android studio xml界面無(wú)法預(yù)覽問(wèn)題2. 基于android studio的layout的xml文件的創(chuàng)建方式3. 詳解Android studio 動(dòng)態(tài)fragment的用法4. Android如何加載Base64編碼格式圖片5. 圖文詳解vue中proto文件的函數(shù)調(diào)用6. Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁(yè)效果(實(shí)例代碼)7. 什么是python的自省8. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟9. Vuex localStorage的具體使用10. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)

網(wǎng)公網(wǎng)安備