python: map() or list comprehension?
本问题已经有最佳答案,请猛点这里访问。
pythonistas:哪个更快,其中
或
假设
我的笔记本电脑(MacBook Pro 2014年年中,OSX 10.11.4,16GB DDR3 RAM,2.2 GHz Intel Core i7)上的
用python 2.7.10测试
1 2 3 4 5 | >>> timeit.timeit("[int(x) for x in range(100)]", number=100000) 1.6301331520080566 >>> timeit.timeit("map(int, range(100))", number=100000) 0.9462239742279053 |
但是,将map与lambda函数一起使用是最慢的:
1 2 | >>> timeit.timeit("map(lambda x: int(x), range(100))", number=100000) 2.285655994415283 |