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 相关文章推荐
详解字典树Trie结构及其Python代码实现
Jun 03 Python
你所不知道的Python奇技淫巧13招【实用】
Dec 14 Python
python基础教程之匿名函数lambda
Jan 17 Python
Django原生sql也能使用Paginator分页的示例代码
Nov 15 Python
Python类的继承用法示例
Jan 31 Python
Python实现将HTML转成PDF的方法分析
May 04 Python
简单了解Python生成器是什么
Jul 02 Python
python创建属于自己的单词词库 便于背单词
Jul 30 Python
numpy:找到指定元素的索引示例
Nov 26 Python
在python中做正态性检验示例
Dec 09 Python
selenium自动化测试入门实战
Dec 21 Python
python中的getter与setter你了解吗
Mar 24 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语法(4)
2006/10/09 PHP
PHP数组内存耗用太多问题的解决方法
2010/04/05 PHP
Yii学习总结之安装配置
2015/02/22 PHP
Jquery实战_读书笔记1—选择jQuery
2010/01/22 Javascript
jquery对ajax的支持介绍
2013/12/10 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
Javascript基础教程之函数对象和属性
2015/01/18 Javascript
JavaScript Window浏览器对象模型方法与属性汇总
2015/04/20 Javascript
关于JS Lodop打印插件打印Bootstrap样式错乱问题的解决方案
2016/12/23 Javascript
详解JavaScript中的六种错误类型
2017/09/21 Javascript
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
nodejs使用node-xlsx生成excel的方法示例
2019/08/22 NodeJs
layui导出所有数据的例子
2019/09/10 Javascript
vue-cli+iview项目打包上线之后图标不显示问题及解决方法
2019/10/16 Javascript
关于vue3默认把所有onSomething当作v-on事件绑定的思考
2020/05/15 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
2020/09/07 Javascript
在vue中使用eslint,配合vscode的操作
2020/11/09 Javascript
python输入多行字符串的方法总结
2019/07/02 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
2020/05/15 Python
详解python安装matplotlib库三种失败情况
2020/07/28 Python
涂鸦板简单实现 Html5编写属于自己的画画板
2016/07/05 HTML / CSS
国际象棋商店:The Chess Store
2018/07/09 全球购物
英国HYPE双肩包官网:英国本土时尚潮牌
2018/09/26 全球购物
法国在线购买汽车轮胎网站:123pneus.fr
2019/02/25 全球购物
数据管理员的自我评价分享
2013/11/15 职场文书
竞选班长演讲稿
2013/12/30 职场文书
主题酒店策划书
2014/01/28 职场文书
《画家乡》教学反思
2014/04/22 职场文书
2014年宣传工作总结
2014/11/18 职场文书
会计工作检讨书
2015/02/19 职场文书
PHP使用非对称加密算法RSA
2021/04/21 PHP
再次探讨go实现无限 buffer 的 channel方法
2021/06/13 Golang
使用Oracle命令进行数据库备份与还原
2021/12/06 Oracle