Re: [Python-Dev] Python-Dev Digest, Vol 112, Issue 23

1 view
Skip to first unread message

Peter Harris

unread,
Nov 14, 2012, 6:00:46 AM11/14/12
to pytho...@python.org
Chris Withers wrote: 
On 14/11/2012 09:58, Merlijn van Deen wrote:
> On 14 November 2012 10:12, Chris Withers <ch...@simplistix.co.uk> wrote:
>> ...which made me a little sad
>
> Why did it make you sad? dict() takes 0.2?s, {} takes 0.04?s. In other
> words: you can run dict() _five million_ times per second, and {}
> twenty-five million times per second. That is 'a lot' and 'a lot'. It
> also means you are unlikely to notice the difference in real-world
> code. Just use the one you feel is clearer in the situation, and don't
> worry about micro-optimalization.

I'm inclined to agree, but it makes me sad for two reasons:

- it's something that people get hung up on, for better or worse. (if it
wasn't, Doug wouldn't have written his article)

- it can make a difference, for example setting up a dict with many keys
at the core of a type loop.

Without looking at implementation, they should logically perform the same...

Well, without looking at the implementation, you could form any opinion you
like about how they should perform. Still you could speculate that dict() will
require a builtins name lookup, and that the process of passing keyword arguments
might itself involve constructing a dictionary, so must inherently take at least
a little longer than compiling a {} literal.

Peter

Reply all
Reply to author
Forward
0 new messages