美文网首页Python变成死相
Python : 生成器表达式Generator expres

Python : 生成器表达式Generator expres

作者: Sonnar | 来源:发表于2020-04-15 09:17 被阅读0次
    生成器表达式 Generator expressions 是列表推导式和生成器的高性能,内存使用效率高的推广.
    • 对1到9所有数字进行平方求和.
      过程是首先在内存中创建平方数列值列表,然后遍历列表,求和后释放内存.这样大列表会占用比较多的内存空间.
    >>> sum([x*x for x in rang(1, 10)])
    
    • 通过生成器表达式就可以节省内存使用.
    >>> sum(x*x for x in range(1, 10))
    
    • 比较两者的内存占用
    >>> L = [x*x for x in range(1, 10)]
    >>> L
    [1,4,9,16,25,36,49,64,81]
    >>> G = (x*x for x in range(1, 10))
    >>> G
    <generator object <genexgr> at 0x7f43bee46a98>
    

    相关文章

      网友评论

        本文标题:Python : 生成器表达式Generator expres

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