I also prefer the dict() function as well as JS object literals but it's too bad there's a performance penalty to using dict().
I agree, but if it wasn't for the fact that using dict() is six times slower than using literals then it wouldn't make much of a difference arguing code style [1].
> (By that logic, you should represent sets as {'element': 1} instead of set('element'), because calling the function "set" is slower than making a dictionary object from the special syntax.)
Which is why I guess there are now set literals in Python (just not for empty sets :).
-- [1]: http://doughellmann.com/2012/11/the-performance-impact-of-us...
I think the reason for having set literals is not performance but completeness and prettier syntax.