【问题标题】:In python lambda expression is fast or the normal function? [duplicate]在 python 中 lambda 表达式是快的还是正常的函数? [复制]
【发布时间】:2017-06-30 06:37:35
【问题描述】:

谁能解释一下哪个更快?使用 lambda 的优缺点是什么?

【问题讨论】:

  • 写函数的快捷方式。执行将几乎相同。
  • 仅将 lambda 用于匿名函数,例如传递给sorted()的关键函数

标签: python python-2.7 python-3.x lambda


【解决方案1】:

让我们创建非常简单的函数;一个作为普通的 Python 函数,一个使用 lambda。

# Lambda Function
foo = lambda x: x

# Normal Python function
def bar(x):
    return x

现在使用timeit模块比较两个函数的执行时间:

>>> import timeit

# `timeit` measurement of Lambda function
>>> timeit.timeit("foo(123)", setup="from __main__ import foo")
0.0789480209350586

# `timeit` measurement of Normal Python function
>>> timeit.timeit("bar(123)", setup="from __main__ import bar")
0.07846808433532715

如您所见,两个函数的执行时间几乎相同

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-24
    • 1970-01-01
    相关资源
    最近更新 更多