python生成器简单代码了理解。

Posted 赵宏涛

tags:

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

__author__ = ‘ZHHT‘
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#返回当前执行到的函数的返回值。并保持当前执行的状态。这时候先执行别的。下次在执行的时候,接者上次调用的位置,继续往下执行代码。
def fib(num):
    n = 0
    a,b=0,1
    while n <num:
        yield b
        a,b=b,a+b
        n+=1
    return ‘完成‘

f = fib(5)

while True:
    try:
        x = next(f)
        print("value%d"%x)
    except StopIteration as e:
        print("生成器返回值--‘%s‘"%e.value)
        break

#第二种是例子:
def gen():
    i = 0
    while i < 5:
        temp = yield i
        print(temp)
        i+=1

f = gen()

print(next(f))
print(next(f))
print(next(f))
#它和上面的相同点就是能够继续迭代执行。不通过点是,流程走到yield 返回了i的值,在执行后面的时候temp则接受到的是None,而send则是发了个值贵temp接受就这样一个情况
print(f.send("haha1"))
print(f.send("haha2"))

  

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

即学即用的 30 段 Python 实用代码

Python代码阅读(第40篇):通过两个列表生成字典

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

创建自己的代码片段(CodeSnippet)

python 用于在终端中运行的sublime text 3的简单代码片段制作工具

python代码补全工具Kite