热线电话:13121318867

登录
2018-10-23 阅读量: 759
yield 怎么用?

看别人代码时看到yield,这关键字是干啥的?

yield是python中比较高级的用法,用来构造生成器:generator 。什么是生成器?创建一个包含百万个元素的列表,占用很大的存储空间,而且后面的元素有可能不经常用到。

生成器不是马上构建出所有元素,而是根据公式推算出下一个元素,用到哪算到哪,如果元素很多时这样很节省内存空间。

如果一个函数定义中包含yield关键字,那么这个函数就不再是一个普通函数,而是一个generator:

generator和函数的执行流程不一样。函数是顺序执行,遇到return语句或者最后一行函数语句就返回。而变成generator的函数,在每次调用next()的时候执行,遇到yield语句返回,再次执行时从上次返回的yield语句处继续执行。

对于初学者只需理解有yield的这个函数是生成器,可迭代的即可。

0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子