在使用iterator遍历dict中的元素
来源:互联网 发布:python 显示进度条 编辑:程序博客网 时间:2024/06/05 03:08
一般我们使用 for k,v in d.items() 来遍历dict中所有的k-v对,Python教程给出的例子也总是这样,但涉及处理大量数据时,比如dict有上G的数据,使用这种方法产生(k,v)的列表会非常耗时,并且占用很多内存。
同STD中的iterator一样,Python中也有迭代子,只是我们不常使用。
dict有几种迭代子,它们分别是:iteritems, iterkeys, itervalues,具体含义可以参见Python的帮助文档。下面我们仅就iteritems给出一个使用的例子:
myIter = myDict.iteritems()
while True :
try :
item_tuple = myIter.next()
print repr(item_tuple)
except StopIteration :
break
另一点,如果只需要在一部分数据中遍历时,使用 for k,v in d.iterms()[m:n] 也是可以的,似乎dict并没有先产生所有items的列表。
- 在使用iterator遍历dict中的元素
- 如何在遍历中使用 iterator/reverse_iterator 删除元素
- 如何在遍历中使用 iterator/reverse_iterator 删除元素
- map在iterator中的遍历
- 如何边遍历集合边删除元素--使用Iterator中的remove()方法
- STL中 如何在遍历中使用 iterator/reverse_iterator 删除元素
- 总结:Iterator 用来遍历容器中的元素(例子详解)
- 使用Java8增强的Iterator遍历集合元素
- Iterator迭代器遍历集合元素
- 使用Iterator遍历hashmap
- 如何使用迭代器iterator循环删除容器中的元素?
- 如何使用迭代器iterator循环删除容器中的元素?
- 如何使用迭代器iterator循环删除容器中的元素?
- 如何使用迭代器iterator循环删除容器中的元素?
- 在遍历中使用 iterator/reverse_iterator 进行 Erase 的用法
- 在遍历中使用 iterator/reverse_iterator 进行 Erase 的用法
- 在遍历中使用 iterator/reverse_iterator 进行 Erase 的用法
- 在遍历中使用 iterator/reverse_iterator 进行 Erase 的用法
- 【转】--北冥有鱼
- oracle客户端配置
- 艺术人生~~~
- 存储过程/SQL中参数传入传出的写法
- 30个超酷的Linux登录界面
- 在使用iterator遍历dict中的元素
- symbian 按键处理
- C++之愚人节笑话
- QT 4.4.3 安装在VS2005
- 在Google网上论坛中看到一篇文章,粘贴下来收藏。《Java 推荐读物与源代码阅读》
- 字符编码-使用c#研究(基础篇)
- 加了协议
- Web应用中避免Form重复提交的三种方案
- 看后很有感触的一篇情感文章mop转的