, biz iki şekilde listelerini arada kullanabilirsiniz:`extend` `+ =` dan daha hızlı mı? python'da
- lst.extend (another_lst)
- lst + = another_lst ben
extend
,+=
kullanarak daha hızlı olacağını düşündüm
bunun nedeni Diğer ikisini kullanarak yeni bir tane oluşturmak yerine listeyi yeniden kullanır.
Ama timeit
olmadan test, bunun +=
daha hızlı olduğu ortaya çıktı,
>>> timeit('l.extend(x)', 'l = range(10); x = range(10)')
0.16929602623
>>> timeit('l += x', 'l = range(10); x = range(10)')
0.15030503273
>>> timeit('l.extend(x)', 'l = range(500); x = range(100)')
0.805264949799
>>> timeit('l += x', 'l = range(500); x = range(100)')
0.750471830368
ben
timeit
koymak koduyla yanlış bir şey var mı?
Bize zaman kazandırabilir misiniz? Ayrıca, bu operasyonlar hem yerinde, hem de herhangi bir farkı açıklamayacaktır. –
Daha büyük listeler kullanmanız gerektiğini düşünüyorum, bu küçücük boyutta, en ufak arka plan etkinliği bile sonucu düzeltebilir. – vichle
@ Space_C0wb0y @vischle Satoru'nun 200'den fazla öğenin listeleriyle bile ne bildirdiği ile tutarlı sonuçlar elde ediyorum. + = biraz, ama sürekli, daha hızlıdır. Bu oldukça tuhaf. –