通过实例简单了解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 相关文章推荐
在Python3中初学者应会的一些基本的提升效率的小技巧
Mar 31 Python
Python中的Numeric包和Numarray包使用教程
Apr 13 Python
python实现按行切分文本文件的方法
Apr 18 Python
python一键升级所有pip package的方法
Jan 16 Python
Python编程之微信推送模板消息功能示例
Aug 21 Python
python生成二维码的实例详解
Oct 29 Python
学python安装的软件总结
Oct 12 Python
通过python连接Linux命令行代码实例
Feb 18 Python
Pycharm中如何关掉python console
Oct 27 Python
python boto和boto3操作bucket的示例
Oct 30 Python
去除python中的字符串空格的简单方法
Dec 22 Python
python Tkinter模块使用方法详解
Apr 07 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
打造计数器DIY三步曲(中)
2006/10/09 PHP
PHP类中Static方法效率测试代码
2010/10/17 PHP
php 字符串替换的方法
2012/01/10 PHP
php木马webshell扫描器代码
2012/01/25 PHP
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
thinkPHP模板算术运算相关函数用法分析
2016/07/12 PHP
利用PHP_XLSXWriter代替PHPExcel的方法示例
2017/07/16 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
PHP调用接口用post方法传送json数据的实例
2018/05/31 PHP
Yii框架where查询用法实例分析
2019/10/22 PHP
脚本吧 - 幻宇工作室用到js,超强推荐share.js
2006/12/23 Javascript
js和as的稳定传值问题解决
2013/07/14 Javascript
javascript对象的使用和属性操作示例详解
2014/03/02 Javascript
javascript中数组array及string的方法总结
2014/11/28 Javascript
JavaScript判断变量是否为空的自定义函数分享
2015/01/31 Javascript
JavaScript闭包详解
2015/02/02 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
2015/03/03 Javascript
javascript与css3动画结合使用小结
2015/03/11 Javascript
分享JS数组求和与求最大值的方法
2016/08/11 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
简单谈谈关于Angular Cli打包的事
2017/09/05 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
2018/05/13 Javascript
vue中defineProperty和Proxy的区别详解
2020/11/30 Vue.js
[02:11]2014DOTA2 TI专访VG战队Fenrir:队伍气氛良好
2014/07/11 DOTA
python 3调用百度OCR API实现剪贴板文字识别
2018/09/04 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
使用gunicorn部署django项目的问题
2020/12/30 Python
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
婴儿鞋,独特的婴儿服装和配件:Zutano
2018/11/03 全球购物
Square Off美国/加拿大:世界上最聪明的国际象棋棋盘
2018/12/06 全球购物
酒店个人培训自我鉴定
2013/12/11 职场文书
营销经理工作检讨书
2014/11/03 职场文书
2014年宣传部个人工作总结
2014/12/06 职场文书
导游词之鲁迅祖居
2019/10/17 职场文书
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
Navicat Premium自定义 sql 标签的创建方式
2022/09/23 数据库