[Python-Dev] str.format_from_mapping
Eric Smith
eric at trueblade.com
Sun Oct 31 23:32:12 CET 2010
On 10/31/2010 6:28 PM, Glenn Linderman wrote:
> On 10/31/2010 2:02 PM, Benjamin Peterson wrote:
>> 2010/10/31 Antoine Pitrou<solipsis at pitrou.net>:
>>> > On Sun, 31 Oct 2010 16:39:44 -0400
>>> > Eric Smith<eric at trueblade.com> wrote:
>>> >
>>>> >> What are your thoughts on adding a str.format_from_mapping (or similar
>>>> >> name, maybe the suggested "format_map") to 3.2? See
>>>> >> http://bugs.python.org/issue6081 . This method would be similar to
>>>> >> "%(foo)s %(bar)s" % d, where d is a dict (or rather any mapping object),
>>>> >> but of course would use str.format syntax: "{foo}
>>>> >> {bar}".format_from_mapping(d).
>>> >
>>> > I must be missing something, but what's the difference with
>>> > XXX.format(**d)?
>> It allows arbitrary mappings.
>
> Other than the language moratorium, why are arbitrary mappings not
> allowed for the (**d) syntax?
An arbitrary mapping would be converted to a dict. That disallows using
a subclass with __missing__ defined, among other things. See the
discussion in the issue.
More information about the Python-Dev
mailing list