Skip to main content
 首页 » 编程设计

python之Lambda 函数更好还是迭代更好

2025年05月04日11lovecherry

在时间处理或内存使用等方面,迭代更好还是 lambda 函数更好?

例如:

x = [10, 20, 30] 
 
for y in x: 
    if y>10 or y<20: 
        print y 

这是更好的还是 lambda 函数? 我想要关于时间处理、内存使用或任何其他比较的答案。

请您参考如下方法:

迭代器和 lambda 是两个完全不同的东西。 lambda 是一个简单的内联函数,迭代器是一个返回连续对象的对象。您的示例存在两个主要问题:您正在测试 x而不是 y和 x 中的所有值将传递给 y>10 or y<20 .因此,更正这些,您的示例可以使用迭代器 和 像这样的 lambda 编写:

for value in filter(lamdba y: y < 10 or y > 20, x): 
    print(value) 

您可以通过多种方式执行此操作,但就性能而言,这取决于您处理的数据类型、处理方式以及处理的数据量。参见 http://wiki.python.org/moin/PythonSpeed/PerformanceTips以获得有用的指南。