Velocity Reviews > emptying a list

# emptying a list

lallous
Guest
Posts: n/a

 10-01-2009
Hello

What is faster when clearing a list?

del L[:]

or

L = []

--
Elias

Geoffrey Clements
Guest
Posts: n/a

 10-01-2009
"lallous" <(E-Mail Removed)> wrote in message news:ha2htc\$u9u\$(E-Mail Removed)...
> Hello
>
> What is faster when clearing a list?
>
> del L[:]
>
> or
>
> L = []
>

Oh, "L = []" definitely, on the basis that there are fewer characters to
type.

http://docs.python.org/3.1/library/profile.html

--
Geoff

Jon Clements
Guest
Posts: n/a

 10-01-2009
On 1 Oct, 16:30, "lallous" <(E-Mail Removed)> wrote:
> Hello
>
> What is faster when clearing a list?
>
> del L[:]
>
> or
>
> L = []
>
> --
> Elias

Does it really matter that much?

And you're really talking about two different things, which quite
often come up on this group.

Example follows:

>>> x = range(5)
>>> x = y
>>> print x, y

[1, 2, 3, 4] [1, 2, 3, 4]
>>> x = []
>>> print x, y

[] [1, 2, 3, 4]
>>> x = y
>>> print x, y

[1, 2, 3, 4] [1, 2, 3, 4]
>>> del x[:]
>>> print x, y

[] []

Cheers,
Jon.

Simon Forman
Guest
Posts: n/a

 10-02-2009
On Thu, Oct 1, 2009 at 11:30 AM, lallous <(E-Mail Removed)> wrote:
> Hello
>
> What is faster when clearing a list?
>
> del L[:]
>
> or
>
> L = []
>
> --
> Elias
> --
> http://mail.python.org/mailman/listinfo/python-list
>

The first form actually clears the list, the second for just re-binds
the name 'L' to a new, empty list.