类的特殊成员__iter__方法classfoo:def__init__(self,name,age):self.name=nameself.age=agedef__iter__(self):returniter([1,2,3,4])li=foo("jiaxin",8)#如果类中有__iter__方法,对象就是可迭代对象#对象.__iter__()的返回值:迭代器#for循环:迭代器,next#f
分类:
其他好文 时间:
2018-04-13 15:12:03
阅读次数:
171
字典key-value键值对的数据的集合可变的、无序的、key不重复初始化:d=dict()d={}d=dict(**kwargs)如:d=dict(a=1,b=2)dict(iterable,**kwarg)使用可迭代对象和name=value对构造字典,不过可迭代对象的元素必须是一个二元结构dict(mapping,**kwarg)dict.fromkeys(iterable,value)字典
分类:
编程语言 时间:
2018-04-08 16:34:54
阅读次数:
228
在Python中,很多对象都是可以通过for语句来直接遍历的,例如list、string、dict等等,这些对象都可以被称为可迭代对象。至于说哪些对象是可以被迭代访问的,就要了解一下迭代器相关的知识了。 迭代器 迭代器对象要求支持迭代器协议的对象,在Python中,支持迭代器协议就是实现对象的__i ...
分类:
编程语言 时间:
2018-04-08 14:39:37
阅读次数:
179
生成器: 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他的数据类型调用了自己内置的_iter_()方法),所以生成器就是可迭代对象 ...
分类:
其他好文 时间:
2018-04-07 16:08:50
阅读次数:
112
一)通过可迭代对象和Python内置函数iter()得到迭代器:即,iter(可迭代对象) --> 得到一个迭代器; 例:list_1 = [1, 2, 3, 4, 5] 1、iter(对象),若此对象想满足迭代要求,其内部要有迭代接口或者一个序列:__iter__()或者__getitm__() ...
分类:
其他好文 时间:
2018-04-06 23:43:18
阅读次数:
201
一、递归和迭代 递归就是调用自身 迭代就是每次迭代都是依赖于上次结果 二、什么是迭代器协议 1、迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个Stopiteration异常,以终止迭代(只能往后走,不能往前退) 2、可迭代对象:实现了迭代器协议的对象( ...
分类:
编程语言 时间:
2018-04-06 21:17:42
阅读次数:
124
Python的数据类型在前几节我们都简单的一一介绍了,接下来我们就要讲到Python的控制判断循环语句 在现实编程中,我们往往要利用计算机帮我们做大量重复计算的工作,在这样的情况下,需要机器能对某个条件进行判断,或是对某个行为进行重复操作 这时我们就必须要知道如何去编写循环判断语句 if... el ...
分类:
编程语言 时间:
2018-04-06 19:36:07
阅读次数:
200
一、迭代器 什么是可迭代对象:内部含有__iter__方法的对象就叫做可迭代对象 可迭代对象就遵循可迭代协议。 如何判断 两种方式 可迭代对象转化成迭代器:可迭代对象.__iter__() >迭代器 迭代器不仅含有__iter__,还含有__next__。遵循迭代器协议。 迭代器的好处: 1,节省内 ...
分类:
其他好文 时间:
2018-04-06 00:15:06
阅读次数:
237
列表的方法: 增: append 添加到最后 insert 两个参数:第一个为索引值,第二个为插入的值。 extend 添加多个值,参数为可迭代对象。 删: clear 删除全部列表,无参数。 pop 无参数则删除最后一个值;也可以输入索引删除。 remove 参数为必备,直接输入要删除的值。 查: ...
分类:
其他好文 时间:
2018-04-05 23:37:58
阅读次数:
200
迭代器协议 1.迭代器协议是指对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个stopiteration一场,以终止迭代(只能往后走不能往前退),比如我能生儿子,儿子生孙子,不能把自己的爹给生出来 2.可迭代对象:实现了迭代器协议的对象(如何实现:对象内部定义一个__i ...
分类:
其他好文 时间:
2018-04-05 23:16:52
阅读次数:
237