在python中lambda表达式是快速函数还是正常函数?

在python中lambda表达式是快速函数还是正常函数?,python,python-2.7,python-3.x,lambda,Python,Python 2.7,Python 3.x,Lambda,谁能解释一下哪个更快?使用lambda的优点或缺点是什么?让我们创建非常简单的函数;一个作为普通Python函数,另一个使用lambda # Lambda Function foo = lambda x: x # Normal Python function def bar(x): return x 现在使用模块比较两个函数的执行时间: 如您所见,这两个函数的执行时间几乎相同。这是编写函数的快捷方式。执行将几乎相同。仅对匿名函数使用lambda,例如,像传递给排序的键函数 >&

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

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

# Lambda Function
foo = lambda x: x

# Normal Python function
def bar(x):
    return x
现在使用模块比较两个函数的执行时间:


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

这是编写函数的快捷方式。执行将几乎相同。仅对匿名函数使用lambda,例如,像传递给排序的键函数
>>> 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