python append方法は大量のデータがlistに加入する時の効率対比である.
886 ワード
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の方法に対して臨時の変数を与えて、実測の効率はある程度高まって、原因は高い人が言いますか