python_迭代器和生成器
2024-10-09 23:03:15
迭代器和生成器
1、迭代器
特点:
- 访问者不需要关心迭代器内部的结构,仅需通过next()方法不断去取下一个内容
- 不能随机访问集合中的某个值 ,只能从头到尾依次访问
- 访问到一半时不能往回退
- 便于循环比较大的数据集合,节省内存
x = [11,22,33,44,55] for i in iter(x):
print(i)
2、生成器
一个函数调用时返回一个迭代器,那这个函数就叫做生成器(generator);如果函数中包含yield语法,那这个函数就会变成生成器;
def xrange(n):
start = 0
while True:
if start > n:
return
yield start
start += 1 obj = xrange(5)
n1 = obj.__next__()
n2 = obj.__next__()
n3 = obj.__next__()
n4 = obj.__next__()
n5 = obj.__next__()
n6 = obj.__next__()
print(n1,n2,n3,n4,n5,n6)
最新文章
- Android开发之Android Material Design Toolbar自定义随笔
- Teredo 是一项 IPv6/IPv4 转换技术
- GS连接事件
- php redis 分布式类
- POJ1416Shredding Company
- POJ 3468 A Simple Problem with Integers(树状数组)
- VS中使用QT调用R脚本
- delphi 保存 和 打开 TREE VIEW的节点已经展开的状态
- [转] .NET领域驱动设计—实践(穿过迷雾走向光明)
- the c programing language 学习过程6
- (light oj 1306) Solutions to an Equation 扩展欧几里得算法
- What is volatile?
- C# 正则表达式应用
- 【原创】Linux基础之SSH隧道/端口转发
- CentOS入门
- Flutter常用组件(Widget)解析-Scaffold
- 【2014年12月6日】HR交流会
- Git 使用篇二:搭建远程服务器
- HDU 1234:开门人和关门人
- 使用SharedPreference保存用户数据的步骤