python中的yield这样理解最容易!

直接举例:

要实现功能→列表中的每个元素+1。

第一种方法:

  1. def addlist(alist):   
  2.     r = []   
  3.     for i in alist:   
  4.         r.append(i+1)   
  5.     return r  



第二种方法:

  1. def addlist(alist):     
  2.     for i in alist:     
  3.         yield i + 1 


采用这二种方法,优点是节约内存,适合海量数据,因为yield实际上是用了一个迭代器。每次调用 yield i + 1 

的时候,都会把本次计算的值存起来,调用完成之后,调用了多少次,就有多少条数据在里面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值