list.clear() missing?!?
Steven D'Aprano
steve at REMOVETHIScyber.com.au
Tue Apr 11 21:36:36 EDT 2006
On Tue, 11 Apr 2006 19:15:18 +0200, Martin v. Löwis wrote:
> Felipe Almeida Lessa wrote:
>> I love benchmarks, so as I was testing the options, I saw something very
>> strange:
>>
>> $ python2.4 -mtimeit 'x = range(100000); '
>> 100 loops, best of 3: 6.7 msec per loop
>> $ python2.4 -mtimeit 'x = range(100000); del x[:]'
>> 100 loops, best of 3: 6.35 msec per loop
>> $ python2.4 -mtimeit 'x = range(100000); x[:] = []'
>> 100 loops, best of 3: 6.36 msec per loop
>> $ python2.4 -mtimeit 'x = range(100000); del x'
>> 100 loops, best of 3: 6.46 msec per loop
>>
>> Why the first benchmark is the slowest? I don't get it... could someone
>> test this, too?
>
> In the first benchmark, you need space for two lists: the old one and
> the new one;
Er, what new list? I see only one list, x = range(100000), which is merely
created then nothing done to it. Have I missed something?
I understood Felipe to be asking, why does it take longer to just create a
list, than it takes to create a list AND then do something to it?
--
Steven.
More information about the Python-list
mailing list