知行编程网知行编程网  2022-12-28 16:30 知行编程网 隐藏边栏  4 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于如何快速掌握python中的yield from语法?的相关知识,包括pythonyield理解与用法,以及yield和yeild这些编程知识,希望对大家有参考作用。

什么是协程?可能很多人不清楚,那我们先从yield from说起。

<br /> <span><br /> yield from<br /> </span><br />



用法详解:

<br /> <span><br /> yield from<br /> </span><br />

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

<br /> <span><br /> yield from<br /> </span><br />

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


简单应用:拼接可迭代对象


我们可以用一个使用

<br /> <span><br /> yield<br /> </span><br />

和一个使用

<br /> <span><br /> yield from<br /> </span><br />

的例子来对比看下。


使用

<br /> <span><br /> yield<br /> </span><br />

<p><span># 字符串<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>


使用

<br /> <span><br /> yield from<br /> </span><br />

<p><span># 字符串<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学习推荐:



本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享