美文网首页
yield vs return

yield vs return

作者: whenitsallover | 来源:发表于2018-04-02 00:14 被阅读0次
import memory_profiler
import time


start = time.time()
print("Before {}Mb".format(memory_profiler.memory_usage()))

def calculation(para):
    result = []
    for i in para:
        result.append(i)
    return result


''' 
return  [52.0] Mb  [56.25390625]Mb           1.644s
yield [51.86328125]Mb  [51.87109375]Mb  0.202s 
'''
res = calculation(range(10000000))
print("After {}Mb".format(memory_profiler.memory_usage()))
print(time.time()-start)

Obviously, generator can boost the performance by saving your memory. It's not holding all of the results in memory. But once you use the list() function, you'll lose this advantage.

相关文章

  • yield vs return

    Obviously, generator can boost the performance by saving ...

  • 第2模块第1章474849生成器调用方法

    生成器的创建方式 1.列表 生成 式 () 2.函数 yield vs return yield 返回数据,并冻结...

  • koa 和 ES6

    构造器的写法 yield的作用yield类似return,但是在一般函数中,return只能一次。但是yield在...

  • yield

    yield不可单独使用 需要与return配合使用,例如: 1 yield return 0; //等0帧 2 y...

  • python中的yield与return

    yield与return的功能都是返回程序执行结果,但是yield返回执行结果并不中断程序执行,return在返回...

  • python-复盘-yield & return区别

    python-复盘-yield & return区别

  • Yield

    yield is a keyword that is used like return, except the f...

  • yield(对比return)

    带有 yield 的函数在 Python 中被称之为 generator(生成器),return和yield的形式...

  • yield和return

    1、.print并不会阻断程序的执行,就不用多说了。 2、func2()方法中的循环执行第一次就被return结束...

  • async await 和yield from

    yield 是一个类似 return 的关键字,迭代一次遇到yield时就返回yield后面(右边)的值。重点是:...

网友评论

      本文标题:yield vs return

      本文链接:https://www.haomeiwen.com/subject/fjgzcftx.html