生成式
快速生成的式子!
内部有range范围,每次都要计算一个数,需要保存起来。
生成器
基础知识:
1.什么是生成器?
2.生成器应用在什么场景,有什么优势?
- 一遍循环一遍计算
- 你需要的时候才会帮你计算,提高了效率(看ppt进行补充)
3.如何创建生成器:
方法一:列表生成列表的改写[]–>()
1)你需要的时候才帮你计算,next(g)执行一次帮你计算一次。并且不回头。
2)
补充:函数中遇到return,函数执行结束,后面的代码不会继续执行。(函数内部即使有while true无限循环,只要遇到return就退出函数执行结束)
方法二:yield(停靠、让步)
如果函数中包含yield关键字,调用函数的返回值是生成器,这个时候函数并没有执行。
通过调用next函数才开始执行函数的内容,遇到yield就停止执行。
当再次调用next方式时,从上次停止的地方继续执行,直到遇到yield关键字停止。
yield应用场景:
打印一个值,不用的时候不用打印,用的时候再打印。
注意:yield关键字和return的区别。