【发布时间】:2017-06-30 06:37:35
【问题描述】:
谁能解释一下哪个更快?使用 lambda 的优缺点是什么?
【问题讨论】:
-
写函数的快捷方式。执行将几乎相同。
-
仅将 lambda 用于匿名函数,例如传递给
sorted()的关键函数
标签: python python-2.7 python-3.x lambda
谁能解释一下哪个更快?使用 lambda 的优缺点是什么?
【问题讨论】:
sorted()的关键函数
标签: python python-2.7 python-3.x lambda
让我们创建非常简单的函数;一个作为普通的 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
如您所见,两个函数的执行时间几乎相同。
【讨论】: