生成器

 生成器

返回的是一个生成器对象(本质是一个迭代器),而不是函数的执行结果,函数的执行结果需要使用next来获取
#生成器函数

#只要有yield关键字的函数都是生成器函数
#yield不能和return共用
#返回值为生成器
#yield不结束生成器函数
def generator():
    print(1)
    yield  'a'
    print(2)
    yield  'b'
    print(3)
    yield 'c'

g = generator()

# print(ret.__next__())
g.__next__()

for i in g:
    pass

def hello():
    for i in range(100):
        yield 'hello%s'%i

g = hello()
for i in g:
    print(i)

 

posted @ 2020-03-31 17:27  vivagoal  阅读(99)  评论(0)    收藏  举报