Steven D'Aprano wrote:
Eric Smith wrote:
Terry Reedy wrote:
Ron Adam wrote:
Steven D'Aprano wrote:
Michael Foord wrote:
Don't we have a pretty-print API - and isn't it spelled __str__ ?
Not really. If it were as simple as calling str(obj), there would
be no need for the pprint module.
I agree. And when I want to use pprint, there are usually
additional output formatting requirements I need that isn't a "one
size fits all" type of problem.
I don't see how you can have a standard interface (like __pprint__),
and have additional, per-object formatting parameters.
I don't see how you can't. Other standard methods take variable
arguments: __init__, __new__, __call__ come to mind.
Those are different, since they're called on known specific objects.
Having params to a generic __pprint__ method would be more like having
params to __str__ or __repr__. If you know enough about the object to
know which parameters to pass to its pretty-print function, then just
call a normal method on the object to do the pprint'ing. But, for
example, assuming pprint for a list is recursive (as it is for repr),
how would you pass the arguments around?
> But that's beside the
point, I don't like __pprint__ in any event. Too special.
I'm not sure what you mean by "too special". It's no more special than
any other special method. Do you mean the use-case is not common enough?
I would find this useful. Whether enough people would find it useful
enough to add yet another special method is an open question.
Bad choice of words on my part. I meant "too special case" for such
machinery. That is, the use case isn't common enough.
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com