gpt4 book ai didi

python - 为什么生成器表达式这么叫?

转载 作者:行者123 更新时间:2023-12-03 21:49:14 25 4
gpt4 key购买 nike

一方面我们有

  • 列表理解[x for x in range(10)]
  • 集修真{x for x in range(10)}
  • 字典理解{x: x for x in range(10)}

  • 另一方面我们有
  • 生成器表达式 (x for x in range(10))

  • 为什么前三个表达式称为“理解”,而最后一个称为“表达式”?它们几乎以相同的方式表示,我猜它们也以非常相似的方式工作。这背后有什么微妙的原因吗?这只是为了好奇。
    引用:
  • PEP 289 -- Generator Expressions
  • PEP 202 -- List Comprehensions
  • 最佳答案

    推导产生消耗内部的新对象 for立即循环。它们一旦运行就“完成”了。
    生成器被懒惰地评估——它们立即返回,并返回一个稍后会产生单个值的对象。

    关于python - 为什么生成器表达式这么叫?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63360983/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com