协程

从yield说起

当生成器执行到yield的时候,通过send方法向生成器传递一个值,生成器在收到传进来的值之后,会将其视为yield表达式的结果。之后,生成器执行到下一个yield处,返回yield后面的那个值给外界。
代码一:

def my_coroutine():
    while True:
        received = yield
        print('Received:', received)


if __name__ == '__main__':
    it = my_coroutine()
    next(it)
    it.send('first')
    it.send('second')

你可能感兴趣的:(协程)