Comment on Python Performance: Why 'if not list' is 2x Faster Than Using len()

<- View Parent
borokov@lemmy.world ⁨1⁩ ⁨day⁩ ago

Don’t know how list are implemented in Python. But in the dumb linked list implementation (like C++ std::list), each element has a “next” member that point the the next element. So, to have list length, you have to do (pseudo code, not actual python code):

len = 0
elt = list.fisrt
while exist(elt):
    elt = elt.next
    len++
return len

Whereas to test if list is empty, you just have to:

return exist(list.first)

source
Sort:hotnewtop