Python学习笔记--Python关键字yield

本文介绍了Python中的生成器和yield关键字,解释了生成器如何通过逐次生成数据而不是一次性加载所有数据到内存中。通过示例展示了生成器在处理大量数据时的效率优势,同时提到了itertools模块在处理迭代任务中的重要作用。
摘要由CSDN通过智能技术生成

原文:http://stackoverflow.com/questions/231767/the-python-yield-keyword-explained

注:这是一篇 stackoverflow 上一个火爆帖子的译文

问题

Python 关键字 yield 的作用是什么?用来干什么的?

比如,我正在试图理解下面的代码:

def node._get_child_candidates(self, distance, min_dist, max_dist):
    if self._leftchild and distance - max_dist < self._median:
        yield self._leftchild
    if self._rightchild and distance + max_dist >= self._median:
        yield self._rightchild

下面的是调用:

result, candidates = l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

manylinux

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>