[newbie]Is there a module for print object in a readable format?
Larry Bates
larry.bates at websafe.com
Mon Oct 17 17:16:14 EDT 2005
What if a is a tuple of lists? What if b is a
class? What if c is a file object? I can't even
tell what [d e] means? IMHO the output isn't in
"a readable format" at all (perhaps something got
lost in the posting).
pprint is as close are you are going to find for a
general solution to this problem.
-Larry Bates
Steven D'Aprano wrote:
> On Mon, 17 Oct 2005 17:25:35 +0800, James Gan wrote:
>
>
>>I want the object printed in a readable format. For example,
>>x =[a, b, c, [d e]] will be printed as:
>>x--a
>> |_b
>> |_c
>> |___d
>> |_e
>
>
> I think you missed an "un-" in your first sentence.
>
> :-)
>
> In general, if you want special/fancy/bizarre printing, you should either
> write your own custom functions, or sub-class the objects in question.
>
> E.g.
>
> def multiline_print(L, indent=""):
> """Multi-line printing of lists.
> WARNING: Untested and probably full of bugs.
> """
> for item in L:
> if type(item) == list:
> multiline_print(item, indent + " ")
> else:
> print indent + "|_" + str(item)
>
>
> Hope this helps.
>
>
>
More information about the Python-list
mailing list