python 迭代器和iter()函数详解及实例

yipeiwu_com7年前Python基础

python中迭代器和iter()函数

迭代器为类序列对象提供了一个类序列的接口。python的迭代无缝地支持序列对象,而且它还允许程序员迭代非序列类型,包括用户定义的对象。迭代器用起来很灵巧,你可以迭代不是序列但表现处序列行为的对象,例如字典的键、一个文件的行,等等。迭代器的作用如下:

•提供了刻扩展的迭代器接口;
•对列表迭代带来了性能上的增强;
•在字典迭代中性能提升;
•创建真正的迭代接口,而不是原来的随即对象访问;
•与所有已经存在的用户定义的类以及扩展得模拟序列和映射的对象向后兼容;
•迭代非序列集合(例如映射和文件)时,可以创建更简洁可读的代码

#iter and generator
#the first try
#=================================
i = iter('abcd')
print i.next()
print i.next()
print i.next()

s = {'one':1,'two':2,'three':3}
print s
m = iter(s)
print m.next()
print m.next()
print m.next()

D:\Scirpt\Python\Python高级编程>python ch2_2.py

a
b
c
{'three': 3, 'two': 2, 'one': 1}
three
two
one

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

Python的Bottle框架中返回静态文件和JSON对象的方法

Python的Bottle框架中返回静态文件和JSON对象的方法

代码如下: # -*- coding: utf-8 -*- #!/usr/bin/python # filename: todo.py # codedtime: 2014-8-28...

基于python判断目录或者文件代码实例

这篇文章主要介绍了基于python判断目录或者文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 判断目录是否存在 'i...

opencv导入头文件时报错#include的解决方法

opencv导入头文件时报错#include的解决方法

一、首先要确保你的电脑上opencv的环境和visual studio上的环境都配置好了,测试的时候通过了没有问题。 二、那么只要在你项目里面的属性设置里面配置一下包含目录就OK了,具体...

Python 学习教程之networkx

networkx是Python的一个包,用于构建和操作复杂的图结构,提供分析图的算法。图是由顶点、边和可选的属性构成的数据结构,顶点表示数据,边是由两个顶点唯一确定的,表示两个顶点之间的...

详解Python的Twisted框架中reactor事件管理器的用法

详解Python的Twisted框架中reactor事件管理器的用法

铺垫 在大量的实践中,似乎我们总是通过类似的方式来使用异步编程: 监听事件 事件发生执行对应的回调函数 回调完成(可能产生新的事件添加进监听队列) 回到1,监听事件...