Ian Bicking wrote: > Alex Martelli wrote: > >>As for the % operator, I never liked it -- either a builtin function, >>or even better a method of string objects, is going to be much more >>readable (and my preference would be to have it take optional >>positional arguments, corresponding to {1}, {2}, etc, and optional >>named arguments, corresponding to {name} &c). > > > Note that if it takes keyword arguments, but doesn't take a single > dictionary-like object (like % and string.Template.substitute do), then > you lose any ability to use clever or interesting dictionary-like > objects for substitution. >
Why doesn't the ** take care of this? To take your example, why doesn't this work? string.Template(pattern).substitute(**EscapingWrapper(**EvalingWrapper(**locals())) Is it that you feel that adding ** is too much of a syntactic burden, or am I just missing something? Regards, -tim _______________________________________________ Python-3000 mailing list Python-3000@python.org http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com