通过实例简单了解Python中yield的作用


Posted in Python onDecember 11, 2019

这篇文章主要介绍了通过实例简单了解Python中yield的作用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

介绍

我们有时候会发现代码中return的地方,有用yield的,难道他们一样吗?其实,yield与return看起来很像,但实际上完全不同。

使用

def test():
  print("****start****")
  while 1:
    res = yield 1
    print("res:", res)
t = test() # 函数中有yield关键字,所以函数并不会真的执行,而是先得到一个生成器t
print(next(t)) # next让函数开始执行,打印start,然后把1返回给next(t),并把1打印出来,这时res还没赋值
print("*"*10) # 打印十个* 
print(next(t)) # 函数从res = yield开始执行,但是1已经被yield出去了,所以res实际上没有值,就是None,然后while重新循环,1被yield出去打印

# ****start****
# 1
# **********
# res:None
# 1

你绕出来了吗?

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

Python 相关文章推荐
python实现通过pil模块对图片格式进行转换的方法
Mar 24 Python
使用SAE部署Python运行环境的教程
May 05 Python
在Python中操作文件之read()方法的使用教程
May 24 Python
python实现自动登录人人网并采集信息的方法
Jun 28 Python
python模拟事件触发机制详解
Jan 19 Python
详解Django项目中模板标签及模板的继承与引用(网站中快速布置广告)
Mar 27 Python
Python使用itchat模块实现群聊转发,自动回复功能示例
Aug 26 Python
使用Python为中秋节绘制一块美味的月饼
Sep 11 Python
YUV转为jpg图像的实现
Dec 09 Python
Python生成器常见问题及解决方案
Mar 21 Python
容易被忽略的Python内置类型
Sep 03 Python
python实现AHP算法的方法实例(层次分析法)
Sep 09 Python
opencv3/Python 稠密光流calcOpticalFlowFarneback详解
Dec 11 #Python
centos7中安装python3.6.4的教程
Dec 11 #Python
python3 使用Opencv打开USB摄像头,配置1080P分辨率的操作
Dec 11 #Python
Python3 中作为一等对象的函数解析
Dec 11 #Python
opencv3/C++图像像素操作详解
Dec 10 #Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
Dec 10 #Python
Python3的unicode编码转换成中文的问题及解决方案
Dec 10 #Python
You might like
php max_execution_time执行时间问题
2011/07/17 PHP
PHP 解决session死锁的方法
2013/06/20 PHP
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
laravel与thinkphp之间的区别与优缺点
2021/03/02 PHP
利用XMLHTTP传递参数在另一页面执行并刷新本页
2006/10/26 Javascript
js 文件引入实现代码
2010/04/23 Javascript
JS、DOM和JQuery之间的关系示例分析
2014/04/09 Javascript
JavaScript中对象property的读取和写入方法介绍
2014/12/30 Javascript
判断访客终端类型集锦
2015/06/05 Javascript
Javascript动画效果(3)
2016/10/11 Javascript
vue.js中Vue-router 2.0基础实践教程
2017/05/08 Javascript
Angular中$broadcast和$emit的使用方法详解
2017/05/22 Javascript
微信小程序 获取javascript 里的数据
2017/08/17 Javascript
jQuery选择器之表单元素选择器详解
2017/09/19 jQuery
在微信小程序中使用图表的方法示例
2019/04/25 Javascript
6种JavaScript继承方式及优缺点(小结)
2020/02/06 Javascript
JS实现简单打字测试
2020/06/24 Javascript
JS自定义右键菜单实现代码解析
2020/07/16 Javascript
[50:59]2018DOTA2亚洲邀请赛 4.7 总决赛 LGD vs Mineski第四场
2018/04/10 DOTA
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
2018/07/11 Python
[原创]Python入门教程3. 列表基本操作【定义、运算、常用函数】
2018/10/30 Python
python使用Paramiko模块实现远程文件拷贝
2019/04/30 Python
用python做游戏的细节详解
2019/06/25 Python
python生成随机红包的实例写法
2019/09/02 Python
详细分析Python垃圾回收机制
2020/07/01 Python
详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据
2020/12/13 Python
Canvas 文本转粒子效果的实现代码
2019/02/14 HTML / CSS
html5教程制作简单画板代码分享
2013/12/04 HTML / CSS
英国复古皮包品牌:Beara Beara
2018/07/18 全球购物
小学生获奖感言范文
2014/02/02 职场文书
小学生勤俭节约演讲稿
2014/08/28 职场文书
2016年秋季运动会加油稿
2015/12/21 职场文书
如何写好活动总结
2019/06/21 职场文书
详解GaussDB for MySQL性能优化
2021/05/18 MySQL
详解Vue项目的打包方式(生成dist文件)
2022/01/18 Vue.js