About the implementation of del in Python 3
Dan Wissme
wissme at free.fr
Thu Jul 6 03:08:28 EDT 2017
I thought that del L[i] would slide L[i+1:] one place to the left,
filling the hole, but :
>>> L
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
>>> id(L)
4321967496
>>> id(L[5]) # address of 50 ?
4297625504
>>> del L[2]
>>> id(L[4]) # new address of 50 ?
4297625504
>>> id(L)
4321967496
So the element 50 is still at the same memory location.
What del L[i] do exactly, and what is its complexity ? O(1) or O(n) ?
Thanks,
dan
More information about the Python-list
mailing list