python中生成器yield
def yield_demo(): for x in range(3): yield x print("生成器后一行代码") a = yield_demo() print(a) #这里的a是一个生成器对象 可以用for循环来遍历生成器对象里的元素 for i in a: print(i) 那么yield的工作过程是怎么样的呢? 可以通过 print(a.__next__())来一步一步显示yield的过程 可以发现,yield首先是返回某一个对象,并且yield会向指针一样指向yield之后的地址,但不执行,直到下次调用yield才开始从yield指向的地址开始执行。也就是说,程序中,yield会返回对象,但返回后就停在这里,直到下次再次调用yield对象中的元素。 函数中,yield可以同时存在多个,只要遇到yield就返回并停止在这里。 来源: https://www.cnblogs.com/laofang/p/12101664.html