生成器的高级特性
Posted z-qinfeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生成器的高级特性相关的知识,希望对你有一定的参考价值。
生成器不但可以产出值 ,还可以接收调用方的入参
举个例子
def gen_fun():
# 这种方式 ,即可产出值 ,也可以接收调用传进来的参数
html = yield "http://www.baidu.com"
print(html)
# 这种方式就只能产出值,不能接收调用方入参
yield "哈哈"
yield "嘎嘎"
if __name__ == ‘__main__‘:
gen = gen_fun()
print(next(gen)) # next方法获取生成器的产出值
send_result = gen.send(‘我就是html‘) # send方法,将参数传到生成器内部,同时还可以重启生成器,执行yield之后内容
print(send_result)
打印结果:
http://www.baidu.com
我就是html
哈哈
一切尽在代码打印中.
next() : 获取生成器的产出值
send() : 将参数传到生成器内部 ,同时重启生成器,返回下一个yield值
以上是关于生成器的高级特性的主要内容,如果未能解决你的问题,请参考以下文章