教程集 www.jiaochengji.com
教程集 >  Python编程  >  Python入门  >  正文 如何快速掌握python中的yield from语法?

如何快速掌握python中的yield from语法?

发布时间:2021-01-19   编辑:jiaochengji.com
教程集为您提供如何快速掌握python中的yield from语法?等资源,欢迎您收藏本站,我们将为您提供最新的如何快速掌握python中的yield from语法?资源

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

yield from 用法详解:

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

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

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

我们可以用一个使用yield和一个使用yield from的例子来对比看下。

使用yield


# 字符串
astr='ABC'
# 列表
alist=[1,2,3]
# 字典
adict={"name":"wangbm","age":18}
# 生成器
agen=(i for i in range(4,8))

def gen(*args, **kw):
   for item in args:
       for i in item:
           yield i

new_list=gen(astr, alist, adict, agen)
print(list(new_list))
# ['A', 'B', 'C', 1, 2, 3, 'name', 'age', 4, 5, 6, 7]


使用yield from


# 字符串
astr='ABC'
# 列表
alist=[1,2,3]
# 字典
adict={"name":"wangbm","age":18}
# 生成器
agen=(i for i in range(4,8))

def gen(*args, **kw):
   for item in args:
       yield from item

new_list=gen(astr, alist, adict, agen)
print(list(new_list))
# ['A', 'B', 'C', 1, 2, 3, 'name', 'age', 4, 5, 6, 7]


以上就是python中yield from语法的详解。更多Python学习推荐:JQ教程网Python大全

您可能感兴趣的文章:
如何快速掌握python中的yield from语法?
深入理解python中的yield
学习Python却没看过这几本书,你就OUT了
python工程师需要会什么
Python到底都能干什么
最全面的12种Python学习方式
给初学者一些学习Python的建议
fluent python是什么意思
python全栈工程师需要学什么
python与access选哪个

[关闭]
~ ~