def brac(s): return "<" + s + ">" def tag(s): return (lambda x: brac(s) + x + brac("/" + s)) def tagAtt(s,att): return (lambda x: brac(s+ " " + " ".join(["%s" % y for y in att])) + x + brac(s)) def body(s): return tag("body")(s) def href(url, text): return tagAtt("a", ["href=\""+url+"\""])(text) list = tag("li") tbody = lambda x: tagAtt("table",["border"]) (tag("tbody")(x)) th = tag("td") tr = tag("tr") def list2HtmlList(l): return "\n".join( [list("%s" % x) for x in l]) def dic2table(d): body = "\n".join([tr(th("%s" % k) + th("%s" % x)) for k, x in d.items()]) return tbody(body)