• 售前

  • 售后

热门帖子
入门百科

python迭代器自界说类的详细方法

[复制链接]
123457297 显示全部楼层 发表于 2021-10-26 13:15:33 |阅读模式 打印 上一主题 下一主题
1、说明

迭代器还具有迭代用户定制种别的本事。迭代对象需要支持两种方式:_iter__()和next(),前者返回迭代本身,后者返回下一个元素。
2、实例
  1. class example(object):
  2.   def __init__(self,num):
  3.     self.num=num
  4.   def __iter__(self):
  5.     return self
  6.   def __next__(self):
  7.     if self.num <= 0:
  8.       raise StopIteration
  9.     tmp = self.num
  10.     self.num -= 1
  11.     return tmp
  12.   
  13. a = example(3)
  14. print(a.__next__())
  15. print(a.__next__())
  16. print(a.__next__())
  17. print(a.__next__())
复制代码
知识点扩展
python自定义类并利用的方法
  1. class Person:
  2. def __init__(self, first, middle, last, age):
  3.   self.first = first;
  4.   self.middle = middle;
  5.   self.last = last;
  6.   self.age = age;
  7. def __str__(self):
  8.   return self.first + ' ' + self.middle + ' ' + self.last + \
  9.   ' ' + str(self.age)
  10. def initials(self):
  11.   return self.first[0] + self.middle[0] + self.last[0]
  12. def changeAge(self, val):
  13.   self.age += val
  14. myPerson = Person('Raja', 'I', 'Kumar', 21)
  15. print(myPerson)
  16. myPerson.changeAge(5)
  17. print(myPerson)
  18. print(myPerson.initials())
复制代码
运行结果如下:
  1. Raja I Kumar 21
  2. Raja I Kumar 26
  3. RIK
复制代码
到此这篇关于python迭代器自定义类的具体方法的文章就介绍到这了,更多干系python迭代器怎样自定义类内容请搜索草根技能分享从前的文章或继续浏览下面的干系文章渴望大家以后多多支持草根技能分享!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作