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求两个文本文件以行为单位的交集、并集与差集的方法
Jun 17 Python
zookeeper python接口实例详解
Jan 18 Python
python3将视频流保存为本地视频文件
Jun 20 Python
数据清洗--DataFrame中的空值处理方法
Jul 03 Python
Python使用folium excel绘制point
Jan 03 Python
Python 控制终端输出文字的实例
Jul 12 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
Aug 06 Python
python实现比对美团接口返回数据和本地mongo数据是否一致示例
Aug 09 Python
python 申请内存空间,用于创建多维数组的实例
Dec 02 Python
详解python metaclass(元类)
Aug 13 Python
python实现数据结构中双向循环链表操作的示例
Oct 09 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 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常用代码大全(新手入门必备)
2010/06/29 PHP
PHPUnit PHP测试框架安装方法
2011/03/23 PHP
thinkphp多层MVC用法分析
2015/12/30 PHP
在IE6下发生Internet Explorer cannot open the Internet site错误
2010/06/21 Javascript
Js切换功能的简单方法
2010/11/23 Javascript
Extjs407 getValue()和getRawValue()区别介绍
2013/05/21 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
百度移动版的url编码解码示例
2014/04/29 Javascript
node.js入门教程
2014/06/01 Javascript
使用jQuery UI库开发Web界面的简单入门指引
2016/04/22 Javascript
JS留言功能的简单实现案例(推荐)
2016/06/23 Javascript
javascript的几种写法总结
2016/09/30 Javascript
Vue组件化通讯的实例代码
2017/06/23 Javascript
element-ui表格列金额显示两位小数的方法
2018/08/24 Javascript
详解Vue前端对axios的封装和使用
2019/04/01 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
Vue实现多标签选择器
2019/11/28 Javascript
详解Vue的异步更新实现原理
2020/12/22 Vue.js
python删除指定类型(或非指定)的文件实例详解
2015/07/06 Python
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
git查看、创建、删除、本地、远程分支方法详解
2020/02/18 Python
python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
2020/03/05 Python
python的链表基础知识点
2020/09/13 Python
Python的轻量级ORM框架peewee使用教程
2021/02/05 Python
英国最红的高街时尚品牌:Topshop
2016/08/05 全球购物
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
美国传奇滑手Paul Rodriguez创办的街头滑板品牌:Primitive Skateboarding
2019/10/29 全球购物
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
耐克亚太地区:Nike APAC
2019/12/07 全球购物
在求职信中如何凸显个人优势
2013/10/30 职场文书
英语系毕业生自荐信
2013/10/31 职场文书
民族团结先进个人材料
2014/02/05 职场文书
护士演讲稿优秀范文
2014/04/30 职场文书
2014年工人工作总结
2014/11/25 职场文书
工作保证书
2015/01/17 职场文书
2015年教师党员承诺书
2015/04/27 职场文书