day14-生成器进阶
程序员文章站
2022-07-01 21:48:26
1.send() 使用send注意事项: (1)第一次使用生成器,必须用_next_获取值。 (2)最后一个yield,不能接收外部的值。 ......
1.send()
''' def generator(): print(123) yield 1 print(456) yield 2 print(789) g = generator() ret = g.__next__() print(ret) ret = g.send(none) # send的效果和_next_一样 print(ret) ''' def generator(): print(123) content = yield 1 print(content) print(456) yield 2 g = generator() ret = g.__next__() print(ret) ret = g.send('hello') # send的效果和_next_一样 print(ret) # send和_next_效果一样,他在打印出第二个yield之前,还将send里面的hello传给content,所以也会打印出hello。 #result: # 123 # 1 # hello # 456 # 2
使用send注意事项:
(1)第一次使用生成器,必须用_next_获取值。
(2)最后一个yield,不能接收外部的值。