[python]yield用法简析

2017-06-07  本文已影响6人  j4fan

一个简单的例子

def printf(list):
    for i in list:
        yield i

if __name__ == '__main__':
    list = [1,2,3]
    print(type(printf(list)))
    for i in printf(list):
        print(i)

输出的内容如下

<class 'generator'>
1
2
3

定义了printf函数,函数的返回是个generator,类似于迭代器,遍历的方法和遍历list差不多,比直接print的好处在于节省了内存。

上一篇下一篇

猜你喜欢

热点阅读