首页 > 代码库 > python 生成器等语法

python 生成器等语法

  生成器

  调用生成器函数,会返回一个对象,这个对象是生成器(可用type()函数判断这个对象类型), 再利用这个对象调用 next()方法,即可获得一个序列。

  传递给 yield 的值,会通过next()方法返回。

  next()方法 当遇到yield时暂停函数的执行,并返回。当下一次再调用next()时恢复函数的执行. 可以通过打印信息来说明生成器的执行情况。

 

def countdown(n):    print ‘---------1‘    while n > 0:        print ‘---------2‘        yield n        print ‘---------3‘        n -= 1        print ‘---------4‘         

 调用生成器,并查看运行情况:

c = countdown(5)c.next()c.next()c.next()

 

协程

  一般函数只处理单个的输入参数集合, 而协程则是对一连串发送给它的输入参数进行处理。 协程是通过 yield 语句创建的。

 

python 生成器等语法