yield浅析-Python3
2024-10-21 07:48:50
yield 浅析
先来一段代码:
def fun1():
for i in range(5):
yield i
print("继续调用继续执行")
gen1 = fun1()
print(gen1)
for i in gen1:
print(i)
"""# 执行结果:
<generator object fun1 at 0x0365DEB0>
0
继续调用继续执行
1
继续调用继续执行
2
继续调用继续执行
3
继续调用继续执行
4
继续调用继续执行
"""
直接得到结果
- yield存在于函数体中, 用于返回生成器对象, 使用了yield的函数就叫做生成器.
- 迭代生成器对象时, 每迭代一次便返回函数体继续执行, 直到没有结果为止
- 另外有
next(迭代对象[, 默认参数])
可用于迭代生成器对象, 但每次只会得到一次结果, 多次迭代可得到全部结果, 结束时会返回异常[或默认参数].
最新文章
- FFT 快速傅里叶变换浅析
- 微信浏览器是移动端的IE6?微信升级内核后Html5和CSS3兼容性总结
- jquery-ajax-async之浏览器差异
- C++中为什么要用虚函数、指针或引用才能实现多态?
- 转:命令和查询责任分离(CQRS)架构模式
- [Eclipse]代码已被写入关于如何切换到unix在新行
- STM32+NRF24L01无线(转)
- Zabbix3.0部署最佳实践
- Injection of autowired dependencies failed
- python实现 双向循环链表
- C# 数组Array
- 2 JAVA 项目名称前红色叹号如何解决
- sweetalert插件的使用
- winscp的root连接ubuntu“拒绝访问”的解决方法
- Java 多线程 interrupt方法
- 警惕ASP.NET MVC中的ValidateInputAttribute
- 继承 多态 java相关基础知识
- 从 SVM 到多核学习 MKL
- C++基础知识 基类指针、虚函数、多态性、纯虚函数、虚析构
- BZOJ4888 Tjoi2017异或和(树状数组)