-8

我正在处理 300k 大文件,并看到一个主要的性能问题。

问题在于正在执行的检查数量。

我们有很多函数,并计划将它们变成匿名函数。

我想知道使用匿名函数时是否有任何性能提升。

4

1 回答 1

3

这个问题本身很容易回答,,在 Python 中使用匿名函数没有性能提升。你很有可能实际上让它变慢了。

对平凡函数的简单timeit测试表明两者之间没有真正的区别。我们取这两个函数

def test(message):
    return message + message

testanon = lambda message: message + message

然后使用timeit模块来测试它们的执行速度:

>>> timeit.repeat("test('test')", setup="from __main__ import test")
[0.16360807418823242, 0.1602180004119873, 0.15763211250305176]
>>> timeit.repeat("testanon('test')", setup="from __main__ import testanon")
[0.15949010848999023, 0.15913081169128418, 0.17438983917236328]

可见,没有真正值得考虑的真正大的性能提升,您的性能问题很可能出在其他地方。

于 2013-06-27T00:33:31.820 回答