zoukankan      html  css  js  c++  java
  • python yield 和 return 对比分析

    相同点:都是返回函数执行的结果

    不同点:return 在返回结果后结束函数的运行,而yield 则是让函数变成一个生成器,生成器每次产生一个值(yield语句),函数被冻结,被唤醒后再产生一个值

    例子:求一组数的平方值

    return 实现:

    def squre(n):
        ls = [i*i for i in range(n)]
        return ls
    for i in squre(5):
        print(i, end='  ')
    结果为:

    0 1 4 9 16
    yield 实现:

    def squre(n):
    for i in range(n):
    yield i*i
    for i in squre(5):
    print(i, end=' ')
    结果为:
    0 1 4 9 16
    yield 生成器相比 return一次返回所有结果的优势:

    (1)反应更迅速

    (2)更节省空间

    (3)使用更灵活


    ---------------------
    作者:冻梨不是梨
    来源:CSDN
    原文:https://blog.csdn.net/qq_34246164/article/details/80960363
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    git提交代码
    python把&#DDDDDD转换为中文
    mac下载安装airtest
    mac安装指定版本的python
    python操作habse
    pyspark操作数据库
    Scrapy_redis爬虫项目
    python实现对列表元素是字典的排序
    postman使用
    图书推荐
  • 原文地址:https://www.cnblogs.com/jfdwd/p/11096282.html
Copyright © 2011-2022 走看看