'''什么是生成器: 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(不需__iter__方法了),所以生成器就是可迭代对象.生成器在python中有2中表现形式:1 生成器函数: 常规函数的定义,但是,使用yield语句而不是return语句返回结果,yield语句一次返回一个结果 在每 ...
分类:
其他好文 时间:
2018-04-28 14:31:07
阅读次数:
179
'''1 迭代器协议是指 : 对象必须提供一个next方法,执行改方法要不返回迭代中的下一项;要不引起一个Stopliteration异常,以终止迭代(只能往后不能往前退)2 可迭代对象 : 实现了迭代器协议的对象(如何实现:对象内部定义了一个__iter__()方法,把对象变成一个可迭代对象,遵循... ...
分类:
其他好文 时间:
2018-04-28 14:22:18
阅读次数:
120
一、迭代器 1.1 迭代的概念 1.2 什么是可迭代对象?什么是迭代器?什么是迭代器对象? #1、什么是可迭代对象? 可迭代对象指的是内置有__iter__方法的对象,即obj.__iter__,如下 'hello'.__iter__ (1,2,3).__iter__ [1,2,3].__iter_ ...
分类:
其他好文 时间:
2018-04-28 01:21:46
阅读次数:
193
列表生成式 a = [i + 1 for i in range(10)] 生成器(generator) 一边循环,一边计算的机制 一种数据类型,这种数据类型自动实现了迭代器协议,是一个可迭代对象。 实现延迟计算,按需执行,节省内存 生成器分类 生成器函数,使用 yield 返回结果和挂起状态 生成器 ...
分类:
其他好文 时间:
2018-04-27 20:03:13
阅读次数:
123
abs 返回参数的绝对值 all 可迭代对象的每个元素是否都为真 any 可迭代对象是否有为真的元素 ascii 返回一个表示对象的字符串 bin 返回二进制表示法 bytearray bytes callable 是否能被调用(个人理解,加上()是否不报错) chr 传入的参数作为索引,返回ASC ...
分类:
编程语言 时间:
2018-04-27 19:48:01
阅读次数:
144
形参中的动态参数 args 是把实参中多余的的位置参数放到一个元祖中 kwargs 是把实参中多余的关键字参数放到一个字典中 最终的形参的排列顺序:位置参数,*args,默认参数,**kwargs * 在函数的调用执行时,输入的参数为可迭代对象可以将元素意义添加到args ** 再函数调用执行时,可 ...
分类:
其他好文 时间:
2018-04-27 13:36:02
阅读次数:
128
[可迭代对象]保存的是已经生成好的数据,占用大量的空间有__iter__方法 就是可迭代对象(Iterable) [迭代器]保存的是生成数据的方法,占用极小的空间,需要时才返回数据既有__iter__,也有__next__ 就是迭代器(Iterator) [生成器]是一个[特殊]的迭代器,保存生成数 ...
分类:
其他好文 时间:
2018-04-27 02:42:34
阅读次数:
119
迭代器 : 区分 : 可迭代 ---> 实现了__iter__() 的类 可迭代对象 ---> 实现了 __iter__() 的类的实例 迭代器(对象) ---> 实现了 __iter__() 和 __next__() 的类的实例 作用 : 一个可以记住遍历的位置的对象,真正能够获取位置内容的是 n... ...
分类:
其他好文 时间:
2018-04-27 02:31:51
阅读次数:
147
可迭代对象(iterable)[可迭代对象的内部实现了__iter__方法,该方法返回一个迭代器对象] 1 2 3 4 5 6 7 8 9 10 11 12 13 >>> x = [1, 2, 3] >>> y = iter(x) >>> z = iter(x) >>> next(y) 1 >>> ...
分类:
其他好文 时间:
2018-04-25 14:57:37
阅读次数:
195
数学运算(7个) 类型转换(24个) 序列操作(8个) 对象操作(7个) 反射操作(8个) 变量操作(2个) 交互操作(2个) 文件操作(1个) 编译执行(4个) 装饰器(3个) 数学运算(7个) 类型转换(24个) 序列操作(8个) 对象操作(7个) 反射操作(8个) 变量操作(2个) 交互操作( ...
分类:
编程语言 时间:
2018-04-24 22:23:18
阅读次数:
324