Python中map和列表推导效率比较实例分析

时间:2022-09-18 17:11:25

本文实例讲述了Pythonmap列表推导效率比较。分享给大家供大家参考。具体分析如下:

直接来测试代码吧:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# list comprehension and map
import time
def test(f, name):
  st = time.time()
  f()
  print '%s %ss'%(name, time.time()-st)
TIMES = 1000
ARR = range(10000)
def tmap():
  i = 0
  while (i<TIMES):
    map(lambda x:x, ARR)    
    i = i+1
def tlst():
  i = 0
  while (i<TIMES):
    [x for x in ARR]    
    i = i+1
test(tmap, "map")
test(tlst, "lst")

在我电脑上的测试结果:

?
1
2
map 1.06299996376s
lst 0.296000003815s

很明显列表推导比map操作会快很多,都三倍速度了

希望本文所述对大家的Python程序设计有所帮助。