码迷,mamicode.com
首页 > 其他好文 > 详细

生成器的高级特性

时间:2019-12-23 23:59:22      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:fun   结果   html   不能   调用   com   ==   strong   span   

生成器不但可以产出值 ,还可以接收调用方的入参

 

举个例子

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值

 

 

生成器的高级特性

标签:fun   结果   html   不能   调用   com   ==   strong   span   

原文地址:https://www.cnblogs.com/z-qinfeng/p/12089145.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!