浅谈对yield的初步理解


Posted in Python onMay 29, 2017

如下所示:

def go():
  while True:
    data = 1
    r = yield data # data是返回值,r是接收值
    print("data", data)
    print("A1", r)
    data += 1

    r = yield data
    print("data",data)
    r += r
    print("A2", r)
    data += 1

    r = yield data
    print("data",data)
    print("A3", r)
    # 运行时此后若找不到下一个yield,则会报错StopIteration

my = go()
print("my", my)
print("None", my.send(None))
print(my.send("1"))
print(my.send("2"))
print(my.send("3"))

①my.send(None):  意思为启动协程,此步会返回第一个yield后面的data值。

②send一次,运行的代码是两个yield之间的代码,最后返回后一个yield后面的data值,若缺少后一个yield语句,则会报错“Stoplteration”

③r = yield data

   r 为my.send('传入的数据') 传入的数据

   data为此段运行完返回的数据

以上这篇浅谈对yield的初步理解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中引用与复制用法实例分析
Jun 04 Python
Python numpy 常用函数总结
Dec 07 Python
使用python读取csv文件快速插入数据库的实例
Jun 21 Python
python numpy 显示图像阵列的实例
Jul 02 Python
python程序封装为win32服务的方法
Mar 07 Python
python 实现在tkinter中动态显示label图片的方法
Jun 13 Python
Python识别html主要文本框过程解析
Feb 18 Python
Python如何对XML 解析
Jun 28 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 Python
python 实现逻辑回归
Dec 30 Python
pyspark对Mysql数据库进行读写的实现
Dec 30 Python
python多进程和多线程究竟谁更快(详解)
May 29 #Python
python 3利用BeautifulSoup抓取div标签的方法示例
May 28 #Python
Python虚拟环境virtualenv的安装与使用详解
May 28 #Python
python 调用win32pai 操作cmd的方法
May 28 #Python
Python 稀疏矩阵-sparse 存储和转换
May 27 #Python
Django基础之Model操作步骤(介绍)
May 27 #Python
python之PyMongo使用总结
May 26 #Python
You might like
dedecms中常见问题修改方法总结
2007/03/21 PHP
php页面缓存ob系列函数介绍
2012/10/18 PHP
PHP中redis的用法深入解析
2014/02/20 PHP
PHP编写RESTful接口
2016/02/23 PHP
jQuery实现简单网页遮罩层/弹出层效果兼容IE6、IE7
2014/06/16 Javascript
javascript事件委托的方式绑定详解
2015/06/10 Javascript
js中利用tagname和id获取元素的方法
2016/01/03 Javascript
Angular.js如何从PHP读取后台数据
2016/03/24 Javascript
AngularJs解决跨域问题案例详解(简单方法)
2016/05/19 Javascript
JS封装的自动创建表格的实现代码
2016/06/15 Javascript
js 定义对象数组(结合)多维数组方法
2016/07/27 Javascript
详解Node.js串行化流程控制
2017/05/04 Javascript
薪资那么高的Web前端必看书单
2017/10/13 Javascript
如何选择适合你的JavaScript框架
2017/11/20 Javascript
jQuery实现简单的下拉菜单导航功能示例
2017/12/07 jQuery
微信小程序使用Promise简化回调
2018/02/06 Javascript
[50:50]完美世界DOTA2联赛PWL S3 Galaxy Racer vs Phoenix 第一场 12.10
2020/12/13 DOTA
Python实现的异步代理爬虫及代理池
2017/03/17 Python
详解python3中zipfile模块用法
2018/06/18 Python
使用python实现快速搭建简易的FTP服务器
2018/09/12 Python
python日志logging模块使用方法分析
2019/05/23 Python
通过代码实例了解Python异常本质
2020/09/16 Python
CSS图片翻转动画技术详解(IE也实现了)
2014/04/03 HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
2012/12/09 HTML / CSS
使用spring mvc+localResizeIMG实现HTML5端图片压缩上传的功能
2016/12/16 HTML / CSS
伦敦一家领先的精品零售商:IRIS Fashion
2019/05/24 全球购物
索尼巴西商店:Sony巴西
2019/06/21 全球购物
DOUGLAS荷兰:购买香水和化妆品
2020/10/24 全球购物
Java中实现多态的机制
2015/08/09 面试题
学前教育求职自荐信范文
2013/12/25 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
自强自立美德少年事迹材料
2014/08/16 职场文书
基层党支部整改方案
2014/10/25 职场文书
中国世界遗产导游词
2015/02/13 职场文书
保密法制宣传月活动总结
2015/05/07 职场文书
python 标准库原理与用法详解之os.path篇
2021/10/24 Python