鉴于以下测试:
>>> import timeit >>> timeit.timeit("[x + 'abc' for x in ['x', 'y', 'z']]") >>> timeit.timeit("map(lambda x: x + 'abc', ['x', 'y', 'z'])")
使用Python 2.7和3.4(Debian 8/testing/jessie),我得到以下数字:
Python27 Python34 1.3s 0.5s map() 0.6s 0.9s list comprehension
使用Python 3显着改善了地图,列表理解受到严重影响.
问题:将代码从Python 2移植到Python 3时,是否建议将列表推导更改为map()?