Bruno Desthuilliers wrote: > George Sakkis a écrit : > > Although I consider dict(**kwds) as one of the few unfortunate design > > choices in python since it prevents the future addition of useful > > keyword arguments (e.g a default value or an orderby function), I've > > been finding myself lately using it sometimes instead of dict literals, > > for no particular reason. Is there any coding style consensus on when > > should dict literals be preferred over dict(**kwds) and vice versa ? > > using dict literals means that you'll always have a builtin dict - you > cannot dynamically select another dict-like class. OTHO, you can only > use valid python identifiers as keys with dict(**kw).
This is all good but doesn't answer my original question: under which circumstances (if any) would {'name':'Mike, 'age':23} be preferred over dict(name='Mike', age=23) and vice versa, or if it's just a matter of taste, similar to using single vs double quote for string literals (when both are valid of course). George -- http://mail.python.org/mailman/listinfo/python-list