python 生成器

Posted lixinliang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 生成器相关的知识,希望对你有一定的参考价值。

python 生成器一共两种创建方法:

1,(x for x in range(5))

2,yield

# vim 3.py

def fib(max):
n,before,after = 0,0,1
while n < max:
yield before
before,after = after,before+after
n += 1

g = fib(8)
print (next(g))
print (next(g))
print (next(g))
print (next(g))
print (next(g))
print (next(g))
print (next(g))
print (next(g))

 

[[email protected] python]# python 3.py
0
1
1
2
3
5
8
13

 

# vim 4.py
def bar():
  print ("ok1")     #1

  count = yield 1
  print (count)

  yield 2


b = bar()
next(b)

ret = b.send("eeeeeeeeeeeeeeeee")
print (ret)

运行结果:

[[email protected] python]# python 4.py
ok1
eeeeeeeeeeeeeeeee
2
看现象。。。。。

 






















以上是关于python 生成器的主要内容,如果未能解决你的问题,请参考以下文章

postman 自动生成 curl 代码片段

Apollo Codegen 没有找到生成代码的操作或片段

前端开发工具vscode如何快速生成代码片段

前端开发工具vscode如何快速生成代码片段

vscode代码片段生成vue模板

常用python日期日志获取内容循环的代码片段