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

yipeiwu_com6年前Python基础

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

直接来测试代码吧:

#!/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") 

在我电脑上的测试结果:

map 1.06299996376s 
lst 0.296000003815s 

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

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

相关文章

win7安装python生成随机数代码分享

复制代码 代码如下:import random def genrand(small, big) :    return small + (big-small...

python time.sleep()是睡眠线程还是进程

python time.sleep()-睡眠线程还是进程? 它会阻止线程。如果查看Python源代码中的Modules / timemodule.c,您会看到在调用中floats...

利用Python yagmail三行代码实现发送邮件

利用Python yagmail三行代码实现发送邮件

Python 发送邮件 我以前在通过Python实现自动化邮件功能的时候是这样的: import smtplib from email.mime.text import MIMET...

python生成随机验证码(中文验证码)示例

复制代码 代码如下:# -*- coding: utf-8 -*-import Image,ImageDraw,ImageFontimport randomimport math, st...

python检测是文件还是目录的方法

本文实例讲述了python检测是文件还是目录的方法。分享给大家供大家参考。具体实现方法如下: import os if os.path.isdir(path): print "i...