python 生成器 的send

Posted on 2018-02-26 18:08  王将军之武库  阅读(133)  评论(0编辑  收藏  举报
>>> def f():
    c=yield 5
    print c
    d=yield c+5
    print d

    
>>> b=f()
>>> b.send(None)
5
>>> b.send(8)#send的参数是给了c,先计算yield表达式的值,返回给调用者
8
13
>>> 

没有return语句的函数的返回值:

>>> def func():
    print 'ok'

    
>>> a=func()
ok
>>> a
>>> type(a)#a的值为None,说明没有返回值的函数,调用后的结果为None
<type 'NoneType'>

 

Copyright © 2024 王将军之武库
Powered by .NET 9.0 on Kubernetes