From 51a4d35823909e66b050195dd621550b15c3df7c Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Wed, 26 May 2021 11:56:45 +0200 Subject: [PATCH] Add some pretty formating helper functions --- mylib/__init__.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/mylib/__init__.py b/mylib/__init__.py index e69de29..15e419e 100644 --- a/mylib/__init__.py +++ b/mylib/__init__.py @@ -0,0 +1,27 @@ +# +# Pretty formating helpers +# +def pretty_format_value(value, encoding='utf8'): + if isinstance(value, dict): + return pretty_format_dict(value) + if isinstance(value, list): + return ",".join([pretty_format_value(x) for x in value]) + elif isinstance(value, bytes): + return "'%s'" % value.decode(encoding, errors='replace') + elif isinstance(value, str): + return "'%s'" % value + return str(value) + + +def pretty_format_dict(attrs): + result = [] + for attr in sorted(attrs.keys()): + result.append(" - %s : %s" % (attr, pretty_format_value(attrs[attr]))) + return "\n".join(result) + + +def pretty_format_list(row): + result = [] + for idx, values in enumerate(row): + result.append(" - #%s : %s" % (idx, pretty_format_value(values))) + return "\n".join(result)