只要含有yield关键字的函数都是生成器函数
那么什么是yield呢
看下图!
生成器--滴滴!
yield的用法跟return有点类似,但它不能和return共用且需要写在函数内
执行一个生成器函数会返回一个生成器
生成器的本质就是迭代器
生成器的表现形式:生成器函数
生成器表达式
生成器函数的特点:调用函数不执行,返回一个生成器
每次调用next方法的时候会取到一个值
直到取完最后一个,执行next会报错
这里再介绍生成器的一些其他方法
send方法
生成器--滴滴!
send功能和next差不多,它在获取下个值的时候给上一个值传递一个数据
使用send的注意事项:第一次使用生成器的时候,是用next获取下一个值
最后一个yield不能接收外部的值
看一个比较有趣的例子
生成器--滴滴!
上下两种方法相当
下面我们介绍一下生成器表达式
列表推导式:[i for i in range(3)]
生成器表达式:(i for i in range(3))
可以看出,这两个式子唯一有区别的就是括号
但它们的意义大不相同,前者返回一个列表,后者返回一个生成器
生成器的概念介绍到这里就结束了。

相关文章:

  • 2021-11-28
  • 2022-12-23
  • 2021-08-07
  • 2021-07-09
  • 2021-10-10
  • 2022-01-10
  • 2021-06-04
猜你喜欢
  • 2021-05-25
  • 2022-01-06
  • 2022-12-23
  • 2021-08-18
  • 2021-10-22
  • 2021-09-30
  • 2021-04-02
相关资源
相似解决方案