通过实例简单了解python yield使用方法


Posted in Python onAugust 06, 2020

实例代码如下

def demo():
  print("开始执行...")
  while 1:
    res = yield '这是返回值'
    print("res:",res)
d1 = demo()
print(d1)
print(next(d1))
print("*"*20)
print(next(d1))

执行结果如下:

开始执行...
这是返回值
********************
res: None
这是返回值

代码解释,个人理解,说得不对希望能够点出:

d1 = demo();生成一个对象,不会输出任何内容

print(d1); 这里不输入任何内容,因为程序第一次遇到yield就暂停了,即使yield前面有输出语句,一样给输出

print(next(d1)); 程序会接着yield继续执行,第二次遇到yield,return“这是返回值”,加起来就会会输出开始执行...
这是返回值

print(next(d1));再次执行next(d1),相当于第三遇到yield,因为上一步相当于被return,res并没有赋值,所以为None,继续执行while,第四次遇到yield,输出“这是返回值”

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python创建和使用字典实例详解
Nov 01 Python
Python类属性与实例属性用法分析
May 09 Python
用Python的Flask框架结合MySQL写一个内存监控程序
Nov 07 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
Jun 06 Python
深入理解Python3中的http.client模块
Mar 29 Python
python使用xpath中遇到:到底是什么?
Jan 04 Python
Python selenium的基本使用方法分析
Dec 21 Python
Pytorch的mean和std调查实例
Jan 02 Python
python 通过邮件控制实现远程控制电脑操作
Mar 16 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
Apr 21 Python
python pygame 愤怒的小鸟游戏示例代码
Feb 25 Python
Python实现生活常识解答机器人
Jun 28 Python
Python切片列表字符串如何实现切换
Aug 06 #Python
Python爬虫爬取微信朋友圈
Aug 06 #Python
Python变量及数据类型用法原理汇总
Aug 06 #Python
基于logstash实现日志文件同步elasticsearch
Aug 06 #Python
如何解决pycharm调试报错的问题
Aug 06 #Python
Python用来做Web开发的优势有哪些
Aug 05 #Python
Python结合Window计划任务监测邮件的示例代码
Aug 05 #Python
You might like
全国FM电台频率大全 - 30 宁夏回族自治区
2020/03/11 无线电
PHP的substr_replace将指定两位置之间的字符替换为*号
2011/05/04 PHP
PHP浮点比较大小的方法
2016/02/14 PHP
PHP实现基于mysqli的Model基类完整实例
2016/04/08 PHP
Laravel模型间关系设置分表的方法示例
2018/04/21 PHP
jQuery简单图表peity.js使用示例
2014/05/02 Javascript
js检验密码强度(低中高)附图
2014/06/05 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
JavaScript焦点事件、鼠标事件和滚轮事件使用详解
2016/01/15 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
Vue.js学习示例分享
2017/02/05 Javascript
js实现旋转木马效果
2017/03/17 Javascript
详解Webpack DLL用法以及功能
2017/07/11 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
jquery获取元素到屏幕四周可视距离的方法
2018/09/05 jQuery
webpack打包nodejs项目的方法
2018/09/26 NodeJs
vue中通过使用$attrs实现组件之间的数据传递功能
2019/09/01 Javascript
layui清除radio的选中状态实例
2019/11/14 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
2021/01/13 Vue.js
python实现在pickling的时候压缩的方法
2014/09/25 Python
Python 网页解析HTMLParse的实例详解
2017/08/10 Python
python导出hive数据表的schema实例代码
2018/01/22 Python
浅谈Python中(&,|)和(and,or)之间的区别
2019/08/07 Python
Tensorflow 实现释放内存
2020/02/03 Python
基于python实现破解滑动验证码过程解析
2020/05/28 Python
细说NumPy数组的四种乘法的使用
2020/12/18 Python
乌克兰在线商店的价格比较:Price.ua
2019/07/26 全球购物
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
销售团队激励口号
2014/06/06 职场文书
党员评议思想汇报
2014/10/08 职场文书
护士2014年终工作总结
2014/11/11 职场文书
新生开学寄语大全
2015/05/28 职场文书
教您怎么制定西餐厅运营方案 ?
2019/07/05 职场文书
七年级话题作文之执着
2019/11/19 职场文书
使用jpa之动态插入与修改(重写save)
2021/11/23 Java/Android
Python借助with语句实现代码段只执行有限次
2022/03/23 Python