def app1(count):
a=[]
for i in range(count):
for j in range(10000):
a.append((i,j))
return a
def app2(count):
a=[]
fun_app = a.append
for i in range(count):
for j in range(10000):
fun_app((i,j))
return a
def run(count):
time1 = time.time()
app1(count)
time2 = time.time()
print "time app1:",time2-time1
time3 = time.time()
app2(count)
time4 = time.time()
print "time app2:",time4-time3
>>> run(10)
time app1: 0.0699999332428
time app2: 0.0269999504089
>>> run(100)
time app1: 0.394000053406
time app2: 0.313999891281
>>> run(1000)
time app1: 4.13199996948
time app2: 3.27199983597
说明:
函数中对list的方法赋与临时变量, 实测效率有所提高, 原因有高人说说吗