通过实例简单了解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实例一个类背后发生了什么
Feb 09 Python
深入理解Python装饰器
Jul 27 Python
Python基于time模块求程序运行时间的方法
Sep 18 Python
python实现ID3决策树算法
Dec 20 Python
python3实现多线程聊天室
Dec 12 Python
浅谈python 导入模块和解决文件句柄找不到问题
Dec 15 Python
Python使用线程来接收串口数据的示例
Jul 02 Python
python内存动态分配过程详解
Jul 15 Python
python调用其他文件函数或类的示例
Jul 16 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
Aug 06 Python
解决Numpy中sum函数求和结果维度的问题
Dec 06 Python
Python爬取腾讯视频评论的思路详解
Dec 19 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
造势之举?韩国总统候选人发布《星际争霸》地图
2017/04/22 星际争霸
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
php.ini中的request_order推荐设置
2015/05/10 PHP
windows系统php环境安装swoole具体步骤
2021/03/04 PHP
js 跨域和ajax 跨域问题小结
2009/07/01 Javascript
jQuery版Tab标签切换
2011/03/16 Javascript
myeclipse安装jQuery插件的方法
2011/03/29 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
js换图片效果可进行定时操作
2014/06/09 Javascript
纯js实现重发验证码按钮倒数功能
2015/04/21 Javascript
简介AngularJS的视图功能应用
2015/06/17 Javascript
javascript实现输出指定行数正方形图案的方法
2015/08/03 Javascript
js强制把网址设为默认首页
2015/09/29 Javascript
JavaScript中关联原型链属性特性
2016/02/13 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
Javascript对象字面量的理解
2016/06/22 Javascript
node.js发送邮件email的方法详解
2017/01/06 Javascript
详解 vue.js用法和特性
2017/10/15 Javascript
浅谈 vue 中的 watcher
2017/12/04 Javascript
jQuery实现获取选中复选框的值实例详解
2018/06/28 jQuery
webpack 从指定入口文件中提取公共文件的方法
2018/11/13 Javascript
[55:23]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python中的包和模块实例
2014/11/22 Python
Python打包可执行文件的方法详解
2016/09/19 Python
基于django ManyToMany 使用的注意事项详解
2019/08/09 Python
python基础教程之while循环
2019/08/14 Python
python的pyecharts绘制各种图表详细(附代码)
2019/11/11 Python
英国票务网站:Ticketmaster英国
2018/08/27 全球购物
文明学生事迹材料
2014/01/29 职场文书
《绿色蝈蝈》教学反思
2014/03/02 职场文书
采购求职信
2014/03/17 职场文书
本科毕业生应聘求职信
2014/07/06 职场文书
办理收楼委托书范本
2014/10/09 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
毕业生党员个人总结
2015/02/14 职场文书
MySQL的安装与配置详细教程
2021/06/26 MySQL