code: def table_output(data):
      '''Get a table representation of a dictionary.'''
      if type(data) == DictType:
          data = data.items()
      headings = [ item[0] for item in data ]
      rows = [ item[1] for item in data ]
      columns = zip(*rows)
      if len(columns):
          widths = [ max([ len(str(y)) for y in row ]) for row in rows ]
      else:
          widths = [ 0 for c in headings ]
      for c, heading in enumerate(headings):
          widths[c] = max(widths[c], len(heading))
      column_count = range(len(rows))
      table = [ ' '.join([ headings[c].ljust(widths[c]) for c in column_count ]) ]
      table.append(' '.join([ '=' * widths[c] for c in column_count ]))
      for column in columns:
          table.append(' '.join([ str(column[c]).ljust(widths[c]) for c in column_count ]))
      return '\n'.join(tablef table_output(data):
      '''Get a table representation of a dictionary.'''
      if type(data) == DictType:
          data = data.items()
      headings = [ item[0] for item in data ]
      rows = [ item[1] for item in data ]
      columns = zip(*rows)
      if len(columns):
          widths = [ max([ len(str(y)) for y in row ]) for row in rows ]
      else:
          widths = [ 0 for c in headings ]
      for c, heading in enumerate(headings):
          widths[c] = max(widths[c], len(heading))
      column_count = range(len(rows))
      table = [ ' '.join([ headings[c].ljust(widths[c]) for c in column_count ]) ]
      table.append(' '.join([ '=' * widths[c] for c in column_count ]))
      for column in columns:
          table.append(' '.join([ str(column[c]).ljust(widths[c]) for c in column_count ]))
      return '\n'.join(table)
docs: Get a table representation of a dictionary.