python yield yield from
def numFun(): dd=yield 1 print(dd) aa=yield 2 print(aa) yield 3 return "ok" ll1=[1,2,3,4] dict1={"aa":"aa1","vc":"3eee"} def myGen(*args,**kwargs): for gen2 in args: for a in gen2: yield a #yield from gen2 ##此句相当于上面两句 if __name__=="__main__": genNum=numFun() ##用send bb1=genNum.send(None)##启动生成器 此时bb1=1 print(bb1) bb=genNum.send(5555)##此时将5555给dd 并bb=2 print(bb) bb2 = genNum.send(555511) print(bb2) ##用next print(next(genNum)) for a in myGen(ll1,dict1,range(5)): print(a)

浙公网安备 33010602011771号