通过实例简单了解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 ldap实现登录实例代码
Sep 30 Python
Python实现字典去除重复的方法示例
Jul 31 Python
Python实现抢购IPhone手机
Feb 07 Python
Python迭代器与生成器用法实例分析
Jul 09 Python
Python面向对象程序设计构造函数和析构函数用法分析
Apr 12 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
python 根据网易云歌曲的ID 直接下载歌曲的实例
Aug 24 Python
win10环境下配置vscode python开发环境的教程详解
Oct 16 Python
浅谈matplotlib.pyplot与axes的关系
Mar 06 Python
django rest framework 过滤时间操作
Jul 12 Python
python Polars库的使用简介
Apr 21 Python
Python包argparse模块常用方法
Jun 04 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
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
2013/04/08 PHP
php输出图像的方法实例分析
2017/02/16 PHP
PHP实现的堆排序算法详解
2017/08/17 PHP
PHP面向对象程序设计继承用法简单示例
2018/12/28 PHP
thinkphp5.1框架实现格式化mysql时间戳为日期的方式小结
2019/10/10 PHP
JavaScript Cookie的读取和写入函数
2009/12/08 Javascript
jquery $.ajax()取xml数据的小问题解决方法
2010/11/20 Javascript
JavaScript 字符串处理函数使用小结
2010/12/02 Javascript
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
jquery解析JSON数据示例代码
2014/03/17 Javascript
jquery实现页面关键词高亮显示的方法
2015/03/12 Javascript
jQuery图片轮播插件——前端开发必看
2016/05/31 Javascript
jQuery插件HighCharts实现的2D条状图效果示例【附demo源码下载】
2017/03/15 Javascript
jQuery树插件zTree使用方法详解
2017/05/02 jQuery
使用puppeteer破解极验的滑动验证码
2018/02/24 Javascript
layui自定义ajax左侧三级菜单
2019/07/26 Javascript
vue获取form表单的值示例
2019/10/29 Javascript
Vue事件处理原理及过程详解
2020/03/11 Javascript
[47:04]LGD vs infamous Supermajor小组赛D组 BO3 第二场 6.3
2018/06/04 DOTA
python版简单工厂模式
2017/10/16 Python
python 基于dlib库的人脸检测的实现
2019/11/08 Python
python sitk.show()与imageJ结合使用常见的问题
2020/04/20 Python
详解用python -m http.server搭一个简易的本地局域网
2020/09/24 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
python中PyQuery库用法分享
2021/01/15 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
The Hut德国站点:时装、家居用品、美容等
2016/09/23 全球购物
马来西亚航空官方网站:Malaysia Airlines
2017/07/28 全球购物
什么是servlet
2012/05/08 面试题
森林防火工作方案
2014/02/14 职场文书
房屋出租协议书
2014/04/10 职场文书
关爱留守儿童标语
2014/06/18 职场文书
食品科学与工程专业毕业生求职信范文
2014/07/21 职场文书
2014年图书管理员工作总结
2014/12/01 职场文书
初中地理教学反思
2016/02/19 职场文书
Python pyecharts案例超市4年数据可视化分析
2022/08/14 Python