生成式的取值用next(G)
2、交换两个变量的值
在python中直接a,b = b,a
在其他语言中a = a+b ; b= a- b; a= a-b通过上述不添加变量的方式进行交换。
3、在函数内部加了yield就变成了生成器了,不能当做普通的函数了
在调用的时候并不会运行,这是相当于创建了一个生成器
next(函数)的时候从头开始运行,然后卡在yield的位置,下一次next的时候会从yield的位置开始运行到yield的位置。
next是运行只会卡在这,但是针对yield ...并没有产生一个真正的值
send也会具有next的功能,但是会传递一个值过来
第一次运行的时候不能直接用t.send('haha'),要是想直接调用t.send(None)或者t.__next__()
应用:可以做多任务,相当于一个协程