生成器和普通函数有些区别,比如生成器不用return返回,而用yield来返回一系列元素
除非“召唤”生成器的next(),否则函数体里面不会执行任何代码块,上下文环境保存着。
虽然不需要明确定义__iter__()和next()方法,但是它本身包含这个方法。
当想要结束一个协程时,使用close()方法即可,close会在协程中引发GeneratorExit异常,这时候可以通过try/ex...
分类:
编程语言 时间:
2014-05-10 09:53:34
阅读次数:
317
一个简单的迭代器示例
--迭代工厂函数
function value(t)
local i = 0;
return
function()
i = i+1;
return t[i];
end;
end;
t = {10,20,30};
iter = va...
分类:
其他好文 时间:
2014-05-10 08:36:53
阅读次数:
268
1、先新建一个客制表2、创建一个函数组3、SE11中该表->实用程序->表维护生成器->权限组填写&NC& ->
函数组填写刚才创建的函数组->维护类型为一步->概述屏幕101->点击查找屏幕号旁边的创建按钮就OK了这边说明一下:表维护的实质是自动生成维护页面并存放到函数组中的,所以维护类型选择‘一...
分类:
其他好文 时间:
2014-05-10 01:27:12
阅读次数:
320
准备工作>>> class NewStyle(object):
more_code_here>>> class OldStyle: more_code_here
在这两个类中,NewStyle是新式的类,OldStyle是旧式的类,如果文件以__metaclas...
分类:
编程语言 时间:
2014-05-10 01:20:08
阅读次数:
485
迭代器和和生成器都是容器对象。它们之间的关系是,生成器是一种特殊的迭代器。所以,先从迭代器入手。迭代器:python中,只要是实现了迭代协议的容器对象,都是迭代器。python的迭代器协议,基于两个方法:·next()
返回下一个·__iter__() 返回迭代器本身如下就是一个迭代器:python...
分类:
其他好文 时间:
2014-05-09 17:30:55
阅读次数:
358
Collection |--List:元素是有序的,元素可以重复。因为该集合体系有索引。
|--ArrayList:底层的数据结构使用的是数组结构。特点:查询速度很快。但是增删稍慢。线程不同步。
List集合特有的迭代器。ListIterator是Iterator的子接口。 ...
分类:
其他好文 时间:
2014-05-07 19:35:32
阅读次数:
306
迭代器模式定义:提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部实现
Iterator::迭代器接口。定义访问和遍历元素的接口
ConcreteIterator:具体的迭代器实现对象。实现对聚合对象的遍历,并跟踪遍历时的当前位置
Aggregate:聚合对象。定义创建相应迭代器对象的接口
ConcreteAggregate:具体聚合对象。实现创建相应的迭代器对象...
分类:
其他好文 时间:
2014-05-07 07:37:03
阅读次数:
313
闲的蛋疼又想起之前看到的文章,想想还是拿来复习一遍写进博客里。原文链接:https://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/yeild可以把普通的function函数,变成
generator生成器。由原来的retu...
分类:
编程语言 时间:
2014-05-05 10:21:13
阅读次数:
453
我们知道标准库中的容器有vector,list和deque。另外还有slist,只不过它不是标准容器。而谈到容器,我们不得不知道进行容器一切操作的利器---迭代器。而在了解迭代器之前,我们得先知道每个容器的结构,包括它的逻辑结构和物理结构。让我们先说说vector:一、vector
我们先来看...
分类:
其他好文 时间:
2014-05-04 20:06:35
阅读次数:
411
1.Traversable他是一个遍历接口规范注意:发现一个有用的函数get_declared_classes,可以以数组形式显示当前脚本下所有已经定义的类名2.IteratorIterator迭代器继承自Traversable,是一种遍历对象内容的对象。你可以自己写一个子类继承自它,并写上具体遍历的方法。Iterator包含..
分类:
Web程序 时间:
2014-05-04 17:18:46
阅读次数:
472