码迷,mamicode.com
首页 > 编程语言 > 详细

python 迭代器

时间:2020-05-03 13:11:46      阅读:69      评论:0      收藏:0      [点我收藏+]

标签:exce   迭代   ret   元素   也会   开始   完成   bre   回退   

Python 迭代器特点:

从第一个元素开始访问,直到结束被遍历的对象,期间不能回退。

两个方法:

iter()和next()

把类创建为迭代器需要两个方法:

__iter__()和__next__()

其中__iter__方法返回一个迭代器对象,该对象包含实现了的__next__()方法

迭代器通过stopiteration异常停止迭代(表明迭代已完成):

a=[1,2,3]
b=iter(a)
while True: try: next(a) except StopIteration: break

除了使用iter()方法产生迭代器之外,在函数内使用yield 也会使得该函数具有迭代器功能,这样的函数称为迭代器:

举个例子:

def getNumber():
    a=1
  if a==10:
    return
   yield a a=a+1
f=getNumber()#这里的f是指生成器返回的yield的值,必须写,否则无法迭代
while True: try:print(next(f)) except StopIteration: break

 

  

 

python 迭代器

标签:exce   迭代   ret   元素   也会   开始   完成   bre   回退   

原文地址:https://www.cnblogs.com/PeterHong-B/p/12821274.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!