通过实例简单了解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 contextlib模块使用示例
Feb 18 Python
详解Python中with语句的用法
Apr 15 Python
Mac中升级Python2.7到Python3.5步骤详解
Apr 27 Python
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
Python实现的计算器功能示例
Apr 26 Python
Python PyAutoGUI模块控制鼠标和键盘实现自动化任务详解
Sep 04 Python
用xpath获取指定标签下的所有text的实例
Jan 02 Python
使用python 写一个静态服务(实战)
Jun 28 Python
python3 requests库文件上传与下载实现详解
Aug 22 Python
python从内存地址上加载python对象过程详解
Jan 08 Python
tensorflow实现二维平面模拟三维数据教程
Feb 11 Python
Python Pillow(PIL)库的用法详解
Sep 19 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
codeigniter上传图片不能正确识别图片类型问题解决方法
2014/07/25 PHP
Yii框架结合sphinx,Ajax实现搜索分页功能示例
2016/10/18 PHP
JS实多级联动下拉菜单类,简单实现省市区联动菜单!
2007/05/03 Javascript
javascript 匿名函数的理解(透彻版)
2010/01/28 Javascript
JS 控制小数位数的实现代码
2011/08/02 Javascript
页面加载完后自动执行一个方法的js代码
2014/09/06 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
JS中使用DOM来控制HTML元素
2016/07/31 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
js时间戳格式化成日期格式的多种方法介绍
2017/02/16 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
详解angular 中的自定义指令之详解API
2017/06/20 Javascript
基于layui数据表格以及传数据的方式
2018/08/19 Javascript
Vue实现用户自定义字段显示数据的方法
2018/08/28 Javascript
微信小程序实现下拉刷新动画
2019/06/21 Javascript
jstree中的checkbox默认选中和隐藏示例代码
2019/12/29 Javascript
vue项目开启Gzip压缩和性能优化操作
2020/10/26 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
全面理解Python中self的用法
2016/06/04 Python
Python使用requests发送POST请求实例代码
2018/01/25 Python
Python实现图片尺寸缩放脚本
2018/03/10 Python
神经网络相关之基础概念的讲解
2018/12/29 Python
python加密解密库cryptography使用openSSL生成的密匙加密解密
2020/02/11 Python
Python docutils文档编译过程方法解析
2020/06/23 Python
HTML5 DeviceOrientation实现手机网站摇一摇功能代码实例
2015/04/24 HTML / CSS
HTML5 body设置全屏背景图片的示例代码
2020/12/08 HTML / CSS
美国受欢迎的女性牛仔裤品牌:DL1961
2016/11/12 全球购物
莫斯科购买书籍网站:Book24
2020/01/12 全球购物
实习期自我鉴定
2013/10/11 职场文书
党校培训思想汇报
2014/01/03 职场文书
运动会通讯稿500字
2014/02/20 职场文书
2014年党员加强作风建设思想汇报
2014/09/15 职场文书
详解Python牛顿插值法
2021/05/11 Python
MySQL实例精讲单行函数以及字符数学日期流程控制
2021/10/15 MySQL
使用python绘制横竖条形图
2022/04/21 Python
Python面试不修改数组找出重复的数字
2022/05/20 Python