yield 复习
2024-09-06 20:02:48
1.协程,微型进程:
yield 生成器
yield 会保存声明的变量,可以进行迭代
使用 接收函数返回的对象.__next__()
next(接收函数返回的对象)
.send() 方法
传递给函数中 yield 声明的对象
x = yield i
会发送给 x 变量
如果一直没有使用 send() ,x 值一直为 None
赋值之后如果没有修改则 x 一直为 send 后的值
2.此时 x 的值为 None ,并没有将 i 赋值给 x
x = yield i 程序:
a = [1,2,3,4,5]
for i in a :
print(i,end = " ")
print() # 创建一个包含 yield 声明的函数
def test_yield():
i = 0
a = 4
while i < a:
x = yield i
# print("x = ",x)
# None
print(x)
# x 通过 gener 进行赋值
i += 1 # 使用 .__next__() 查看迭代对象
gener = test_yield()
print(gener.__next__())
#
print(gener.__next__())
#
print(next(gener))
#
gener.send("x 通过 gener 进行赋值")
for i in test_yield():
# i 在 test_yield 中 yield 声明的迭代对象中
print(i,end = " ")
2020-04-12
最新文章
- AngularJS 包含
- java内存设置
- eclipse-mvn打包跳过junit测试类
- right-click an action, missing ";Go to slot";
- Linux中使用crontab命令定时执行shell脚本或其他Linux命令
- HDFS权限问题
- Android 最火的快速开发框架XUtils
- HDU 5458 Stability (树链剖分+并查集+set)
- Spark Streaming揭秘 Day30 集群模式下SparkStreaming日志分析
- Spring 初学 1
- 关于Python中的for循环控制语句
- Cocos2d-X字体
- iOS 图片的拉伸,取固定区域显示
- js 选择图片生成base64数据
- java 网站用户在线和客服聊天
- Kubernetes dashboard安装
- C#编辑EXE使用的appSettings节点的Config文件
- yaml的简单学习
- DHT
- Android学习笔记——log无法输出的解决方法和命令行查看log日志
热门文章
- List AND Set
- 解决移动端点击穿透问题_h5实现移动端点击事件穿透的多种解决方案
- css样式冲突怎么解决?
- html5中contenteditable 光标_如何设置光标位置
- Python 之父说 Python 历史
- HDU 4352 XHXJ&#39;s LIS HDU(数位DP)
- MVC + EFCore 项目实战 - 数仓管理系统3 - 完成整体样式风格配置
- C++求树子节点权重最大的和
- java学习第三天2020/7/8
- 机器学习实战基础(二十五):sklearn中的降维算法PCA和SVD(六) 重要接口,参数和属性总结