What I had to output was a list of 3-item lists, each 3-item list containing matching number and two ordered dicts with title-to-correct and best matching title, both with additional info such as author, shelfmark, etc.
I went for output in Yaml, because it's advertised as human-readable and human-editable. For this I have no user testimonial yet, but creating the output file was really easy (if you take time to read the PyYaml documentation).
import yaml
.
.
with codecs.open('Lit_titles_match.yml', 'w', 'utf-8-sig') as m:
# match is a list of lists of one float and two dicts.
m.write(yaml.dump_all(match, default_flow_style=False))