Мне было интересно, почему понимание списка происходит намного быстрее, чем добавление в список. Я думал, что разница просто выразительна, но это не так.
>>> import timeit
>>> timeit.timeit(stmt='''\
t = []
for i in range(10000):
t.append(i)''', number=10000)
9.467898777974142
>>> timeit.timeit(stmt='t= [i for i in range(10000)]', number=10000)
4.1138417314859
Понимание списка происходит на 50% быстрее. Почему?