迭代器协议 1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个Stoplteration异常,以终止迭代(只能往后走不能往前退) 2.可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个__iter__()方法) 3.协议是一种约定,可迭代对 ...
分类:
编程语言 时间:
2017-06-16 21:13:48
阅读次数:
198
一 迭代器 迭代的意思:类似于循环每一次重复的过程就被称为迭代的过程,提供迭代方法的容器称为迭代器。 1.迭代器协议是指:迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问,知道所有的元素被访问完结束。迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退。 2.可迭 ...
分类:
其他好文 时间:
2017-06-16 19:29:12
阅读次数:
119
一 生成器初探 什么是生成器? 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他的数据类型需要调用自己内置的__iter__方法),所以生成器就是可迭代对象 生成器分类及在python中的表现形式:(Python有两种不同的方式提供生成器) 1.生成器函数:常规函数定义,但是,使用yi ...
分类:
编程语言 时间:
2017-06-16 14:23:07
阅读次数:
235
一 什么是迭代器协议 1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前退) 2.可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个__iter__()方法) 3.协议是一种约 ...
分类:
编程语言 时间:
2017-06-15 15:26:59
阅读次数:
207
一 什么是迭代器协议 1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前退) 2.可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个__iter__()方法) 3.协议是一种约 ...
分类:
编程语言 时间:
2017-06-05 14:23:42
阅读次数:
298
一、生成器 1.定义 生成器(generator)是一个特殊的迭代器,它的实现更简单优雅,yield是生成器实现__next__()方法的关键。它作为生成器执行的暂停恢复点,可以对yield表达式进行赋值,也可以将yield表达式的值返回。 也就是说,yield是一个语法糖,内部实现支持了迭代器协议 ...
分类:
编程语言 时间:
2017-06-03 11:18:17
阅读次数:
269
迭代: 迭代器协议: 1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前退) 2.可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个__iter__()方法) 3.协议是一种约 ...
分类:
编程语言 时间:
2017-05-21 17:56:00
阅读次数:
204
python学习之路 学习目录 番外篇:python简介及安装 第一篇:python基础 第二篇:python基本数据类型 第三篇:字符串格式化及函数 第四篇:python3内置函数大全 第五篇:文件操作 第六篇:迭代器协议和生成器 第七篇:装饰器 第八篇:模块 第九篇:re正则表达式 第十篇:面向 ...
分类:
编程语言 时间:
2017-05-17 12:07:39
阅读次数:
173
__slots__:定义类时,使用__slots__变量可以限制能添加的实例的属性形如:__slots__=[‘name‘,‘age‘]这样实例化的对象只能绑定到name和age属性,其他属性则无法被绑定classPeople:
__slots__=[‘name‘,‘age‘]
def__init__(self,name,age):
self.name=name
self.age=age
p=People..
分类:
编程语言 时间:
2017-04-25 21:11:17
阅读次数:
186
一 三个item方法 二 __next__和__iter__方法实现迭代器协议 三 __doc__ __doc__的属性子类是无法从父类中继承来的 四 __module__,__class__ __module__ 表示当前操作的对象在那个模块 __class__ 表示当前操作的对象的类是什么 五 ...
分类:
其他好文 时间:
2017-04-25 19:56:01
阅读次数:
189