首页 > 其他 > 详细

迭代器和生成器

时间:2021-04-16 12:28:04      阅读:17      评论:0      收藏:0      [点我收藏+]

迭代器的特点:记录下遍历的位置,只往前进行,不后退

MyList=【1,2,3,4,5,6,7,8,9】

迭代过了1,就是2,再是3,不会掉过头去

迭代器有两个内置函数:

class  Myiter:

  def --iter--(self):   

    self.a=1

    return self  

  def --next--(self):

    x=self.a

    self.a+=1

    return  x

myiter=Myiter()     #创建类的实例

it=iter(mylier)    迭代器化

print(next(it))

升级一下,防止一直迭代:

class  Myiter:

  def --iter--(self):   

    self.a=1

    return self  

  def --next--(self):

    if self.a<=20:

      x=self.a

      self.a+=1

      return  x

    else:

      raise StopIteration    #当迭代大于20 时,停止迭代

myiter=Myiter()     #创建类的实例

it=iter(mylier)    迭代器化

print(next(it))

 

迭代器和生成器

原文:https://www.cnblogs.com/qslove7/p/14665985.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!