Что быстрее? `list.pop (0)` vs `del list [0]`? - PullRequest
1 голос
/ 27 февраля 2020

Какая операция со списком выполняется быстрее? list.pop(0) или del list[0]?

1 Ответ

2 голосов
/ 27 февраля 2020

Отказ от ответственности Быстрый и грязный тест:

При использовании IPython на Python 3.7.6 кажется, что del list[0] быстрее , как требуется только около 65% времени, потраченного list.pop(0).

Используемые команды:

## Baseline to be subtracted
%timeit lst = list(range(10))
# >> 230 ns ± 1.6 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

## list.pop(0) time taken
%timeit lst = list(range(10)); lst.pop(0)
# >> 281 ns ± 0.926 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

## del list[0] time taken
%timeit lst = list(range(10)); del lst[0]
# >> 263 ns ± 1.11 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

(263-230) / (281-230) = 33/51 = 65%

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...