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

Python之旅(五)迭代器和生成器

时间:2019-09-26 00:15:41      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:就是   for循环   执行   访问   迭代器   class   sum   生成   工具   

迭代器协议

迭代定义:

迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。

 

1迭代器协议:对象必须提供一个__next__() 方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代(只能往前,不能退后)

2可迭代对象(迭代器):实现了迭代器协议的对象(如何实现迭代器协议,在对象内部定义__iter__()方法

3协议是一种约定,可迭代对象实现了迭代器协议,Python的内部函数工具(如for循环,sum,min,max函数等)都是使用迭代器协议访问对象!!!

 

迭代器作用:可以节省内存

 

 

 

迭代器相关的方法:iter() 和 next()

python内置函数 next() 本质就是在调用__next__()

>>> list=[1,2,3,4]
>>> it = iter(list)    # 创建迭代器对象
>>> print (next(it))   # 输出迭代器的下一个元素
1
>>> print (next(it))
2
>>>

  

 

Python之旅(五)迭代器和生成器

标签:就是   for循环   执行   访问   迭代器   class   sum   生成   工具   

原文地址:https://www.cnblogs.com/dreamer-lin/p/11588261.html

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