python3新增知识点 yield from

需求

给你一串字符串,将字符串按元素单个输出出来。

在python3.4之前,如果想要实现这个需求。我们可以用for循环来做到

def gennerator():
    a = 'hsadfihdsachdsio'
    b = '2346328452344'
    for i in a:
        yield i
    for i in b:
        yield i
g = gennerator()
for i in g:
    print(i)
View Code

太长了,截了一段。

但是

在python3.4之后跟新了一个yeild from

于是我们可以这样做

def gennerator():
    a = 'hsadfihdsachdsio'
    b = '2346328452344'
    yield from a
    yield from b
g = gennerator()
for i in g:
    print(i)
View Code

结果完全一样,但是代码量大大简化了。

猜你喜欢

转载自www.cnblogs.com/zly9527/p/11374681.html