python中的yield from语法快速学习


Posted in Python onNovember 06, 2020

协程是什么?可能很多人不清楚,所以我们先从其中的yield from开始讲解。

yield from 用法详解:

yield from 是在Python3.3才出现的语法。所以这个特性在Python2中是没有的。

yield from 后面需要加的是可迭代对象,它可以是普通的可迭代对象,也可以是迭代器,甚至是生成器。

简单应用:拼接可迭代对象
我们可以用一个使用yield和一个使用yield from的例子来对比看下。

使用yield

<p style="line-height: 1.75em;"><span style="font-family: 微软雅黑, "Microsoft YaHei"; font-size: 14px;"># 字符串<br>astr='ABC'<br># 列表<br>alist=[1,2,3]<br># 字典<br>adict={"name":"wangbm","age":18}<br># 生成器<br>agen=(i for i in range(4,8))<br><br>def gen(*args, **kw):<br>  for item in args:<br>    for i in item:<br>      yield i<br><br>new_list=gen(astr, alist, adict, agen)<br>print(list(new_list))<br># ['A', 'B', 'C', 1, 2, 3, 'name', 'age', 4, 5, 6, 7]<br></span></p>

使用yield from

<p style="line-height: 1.75em;"><span style="font-family: 微软雅黑, "Microsoft YaHei"; font-size: 14px;"># 字符串<br>astr='ABC'<br># 列表<br>alist=[1,2,3]<br># 字典<br>adict={"name":"wangbm","age":18}<br># 生成器<br>agen=(i for i in range(4,8))<br><br>def gen(*args, **kw):<br>  for item in args:<br>    yield from item<br><br>new_list=gen(astr, alist, adict, agen)<br>print(list(new_list))<br># ['A', 'B', 'C', 1, 2, 3, 'name', 'age', 4, 5, 6, 7]<br></span></p>

到此这篇关于python中的yield from语法快速学习的文章就介绍到这了,更多相关如何快速掌握python中的yield from语法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python求两个list的差集、交集与并集的方法
Nov 01 Python
Python中的模块和包概念介绍
Apr 13 Python
python通过apply使用元祖和列表调用函数实例
May 26 Python
详解Python异常处理中的Finally else的功能
Dec 29 Python
Python if语句知识点用法总结
Jun 10 Python
Python2和Python3的共存和切换使用
Apr 12 Python
Python中变量的输入输出实例代码详解
Jul 28 Python
Python进度条的制作代码实例
Aug 31 Python
详解用Pytest+Allure生成漂亮的HTML图形化测试报告
Mar 31 Python
Python+Xlwings 删除Excel的行和列
Dec 19 Python
Python实现对word文档添加密码去除密码的示例代码
Dec 29 Python
python实现商品进销存管理系统
May 30 Python
Python通过字典映射函数实现switch
Nov 06 #Python
Python使用grequests并发发送请求的示例
Nov 05 #Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
Nov 05 #Python
Python中常用的os操作汇总
Nov 05 #Python
Python Web项目Cherrypy使用方法镜像
Nov 05 #Python
Python实现异步IO的示例
Nov 05 #Python
Python requests HTTP验证登录实现流程
Nov 05 #Python
You might like
PHP数据库开发知多少
2006/10/09 PHP
php打开远程文件的方法和风险及解决方法
2013/11/12 PHP
php计算数组不为空元素个数的方法
2014/01/27 PHP
Codeigniter的dom类用法实例
2015/06/26 PHP
php导出生成word的方法
2015/12/25 PHP
JavaScript网页制作特殊效果用随机数
2007/05/22 Javascript
JavaScript 放大镜 移动镜片效果代码
2011/05/09 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
jquery制作搜狐快站页面效果示例分享
2014/02/21 Javascript
调试代码导致IE出错的避免方法
2014/04/04 Javascript
ext前台接收action传过来的json数据示例
2014/06/17 Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
2016/01/27 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
2017/01/11 Javascript
jquery实现input框获取焦点的简单实例
2017/01/26 Javascript
浅谈react.js 之 批量添加与删除功能
2017/04/17 Javascript
vue+webpack 打包文件 404 页面空白的解决方法
2018/02/28 Javascript
vue.js中实现登录控制的方法示例
2018/04/23 Javascript
Vue render渲染时间戳转时间,时间转时间戳及渲染进度条效果
2018/07/27 Javascript
使用D3.js构建实时图形的示例代码
2018/08/28 Javascript
用node.js写一个jenkins发版脚本
2019/05/21 Javascript
vue项目使用高德地图的定位及关键字搜索功能的实例代码(踩坑经验)
2020/03/07 Javascript
[03:17]2016完美“圣”典风云人物:冷冷专访
2016/12/08 DOTA
线程和进程的区别及Python代码实例
2015/02/04 Python
python实现的二叉树定义与遍历算法实例
2017/06/30 Python
python画出三角形外接圆和内切圆的方法
2018/01/25 Python
python如何求解两数的最大公约数
2018/09/27 Python
巴西家用小家电购物网站:Polishop
2016/08/07 全球购物
One.com挪威:北欧成长最快的网络托管公司
2016/11/19 全球购物
Fanatics英国官网:美国体育电商
2018/11/06 全球购物
阿联酋手表和配饰购物网站:Rivolishop
2019/11/25 全球购物
会计专业自荐信
2013/12/02 职场文书
教师个人学习总结
2015/02/11 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
Java字符缓冲流BufferedWriter
2022/04/09 Java/Android
Java后端 Dubbo retries 超时重试机制的解决方案
2022/04/14 Java/Android
Pytorch中expand()的使用(扩展某个维度)
2022/07/15 Python