通过实例简单了解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的Django框架中simple-todo工具的简单使用
May 30 Python
Python中使用asyncio 封装文件读写
Sep 11 Python
Windows下Python2与Python3两个版本共存的方法详解
Feb 12 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
Sep 25 Python
详谈Python中列表list,元祖tuple和numpy中的array区别
Apr 18 Python
Python之批量创建文件的实例讲解
May 10 Python
对python当中不在本路径的py文件的引用详解
Dec 15 Python
python实现一个简单的ping工具方法
Jan 31 Python
Python+OpenCV实现旋转文本校正方式
Jan 09 Python
Tensorflow中的降维函数tf.reduce_*使用总结
Apr 20 Python
python3通过qq邮箱发送邮件以及附件
May 20 Python
Python如何实现机器人聊天
Sep 10 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 empty() 检查一个变量是否为空
2011/11/10 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
ThinkPHP中where()使用方法详解
2016/04/19 PHP
php中mkdir()函数的权限问题分析
2016/09/24 PHP
详解php框架Yaf路由重写
2017/06/20 PHP
PHP 计算两个时间段之间交集的天数示例
2019/10/24 PHP
JS判断数组中是否有重复值得三种实用方法
2013/08/16 Javascript
简介JavaScript中valueOf()方法的使用
2015/06/05 Javascript
跟我学习javascript的this关键字
2020/05/28 Javascript
javascript数组克隆简单实现方法
2015/12/16 Javascript
js中遍历Map对象的方法
2016/07/27 Javascript
微信小程序-滚动消息通知的实例代码
2017/08/03 Javascript
vue登录注册及token验证实现代码
2017/12/14 Javascript
js实现input密码框显示/隐藏功能
2020/09/10 Javascript
Node.js事件的正确使用方法
2019/04/05 Javascript
在layui中对table中的数据进行判断(0、1)转换为提示信息的方法
2019/09/28 Javascript
Nodejs技巧之Exceljs表格操作用法示例
2019/11/06 NodeJs
小程序接入腾讯位置服务的详细流程
2020/03/03 Javascript
[52:57]2014 DOTA2国际邀请赛中国区预选赛 LGD-CDEC VS HGT
2014/05/21 DOTA
[03:13]DOTA2-DPC中国联赛1月25日Recap集锦
2021/03/11 DOTA
python遍历目录的方法小结
2016/04/28 Python
Python基于二分查找实现求整数平方根的方法
2016/05/12 Python
Python中的异常处理相关语句基础学习笔记
2016/07/11 Python
Python中模块string.py详解
2017/03/12 Python
Flask 让jsonify返回的json串支持中文显示的方法
2018/03/26 Python
pandas apply 函数 实现多进程的示例讲解
2018/04/20 Python
CSS3轻松实现清新 Loading 效果的简单实例
2016/06/06 HTML / CSS
美国首屈一指的高品质珠宝设计师和零售商:Allurez
2018/01/23 全球购物
Weblogic的布署方式
2013/08/23 面试题
创建市级文明单位实施方案
2014/03/01 职场文书
初三学生评语大全
2014/04/24 职场文书
2014迎国庆标语大全
2014/09/19 职场文书
MySQL时间设置注意事项的深入总结
2021/05/06 MySQL
只用40行Python代码就能写出pdf转word小工具
2021/05/31 Python
图解排序算法之希尔排序Java实现
2021/06/26 Java/Android
苹果发布了MagSafe固件更新,可以不外接电源实现最高7.5W充电
2022/04/21 数码科技