Because I can never, ever, remember exactly how to code these. Example of both, basic.
data_list = []
with open(input_file, 'rU') as f:
data_file = csv.DictReader(f)
for line in data_file:
data_list.append(line) # gets you a list of dicts
the_header = ['h1', 'h2', 'etc'] # column headers, a list of text strings
with open(output_file, 'w') as f:
file_writer = csv.DictWriter(f, fieldnames=the_header)
file_writer.writeheader()
for line in data_list:
file_writer.writerow(line)
Here I am going to experiment linking it as a script-tagged element from Gist via GitHub: