gpt4 book ai didi

python - 在 Python 中使用多层生成器的性能注意事项?

转载 作者:行者123 更新时间:2023-11-28 17:55:11 24 4
gpt4 key购买 nike

与仅使用一个生成器相比,使用许多链接在一起的生成器是否有任何性能考虑因素。

例如:

def A(self, items):
for item in self.AB(items):
if object.A():
yield item

def AB(self, items):
for object in self.ABC(objects):
if object.A() or object.B():
yield object

def ABC(self, objects):
for object in objects:
if object.A() or object.B() or object.C():
yield object

显然调用 A(objects) 将经过三个不同的生成器,但在许多情况下,如果有不同的生成器来处理不同的过滤,它会使代码重用更好。谁能指出使用这种技术对性能有重大影响?

最佳答案

链接生成器没有错,但在这个例子中没有理由让 A 调用 self.AB,它可以循环遍历项目以获得相同的结果。

您应该尽可能清楚地编写代码,如果它很慢,则使用分析器来确定瓶颈在哪里。诸如此类的人为示例与实际情况相去甚远,无法作为有用的绩效指标。

关于python - 在 Python 中使用多层生成器的性能注意事项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/759729/

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