В python мы можем объединить списки двумя способами:
- lst.extend(another_lst)
- lst + = another_lst
Я думал, что extend
будет быстрее, чем с помощью +=
, потому что он повторно использует список вместо создания нового с помощью двух других.
Но когда я тестирую его с помощью timeit
, оказывается, что +=
быстрее,
>>> 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
Что-то не так с кодом, который я ввел в timeit
?