在python中,当做列表操作的时候,建议用extend()函数代替+。

2011-03-20  李琪 

#-*- coding:utf-8 -*-
'''
Created on 2011-3-20
作者: 李昱彤
Email: liqi1031@gmail.com
'''
def method1():
    alist = []
    i = 0
    while i < 10000:
        alist.append(i)
        i = i + 1
    blist = []
    x = 0
    while x < 500:
        blist.append(x)
        x = x + 1
    y = 0
    while y < 2000:
        alist.extend(blist)
        y = y + 1
   
    return alist
def method2():
    alist = []
    i = 0
    while i < 10000:
        alist.append(i)
        i = i + 1
    blist = []
    x = 0
    while x < 500:
        blist.append(x)
        x = x + 1
    y = 0
    while y < 2000:
        alist = alist + blist
        y = y + 1
   
    return alist
import time
startTime1 = time.time()
method1()   
print '方法一消耗的时间是:%s 秒' % round((time.time() - startTime1), 3)
print 50*"="
import time
startTime2 = time.time()
method2()
print '方法二消耗的时间是:%s 秒' % round((time.time() - startTime2), 3)
 
测试结果:
方法一消耗的时间是:0.047 秒
==================================================
方法二消耗的时间是:12.871 秒
#===============================================================================
# 测试结论:当做列表操作的时候,建议用extend()函数代替+
#===============================================================================
460°/4605 人阅读/0 条评论 发表评论

登录 后发表评论