import codecs import csv with open('data.csv', 'wb') as f: # Write BOM to the file, it is required # Excl without BOM does not understend UTF-8 charcters... (Non ascii characters) f.write(codecs.BOM_UTF8) # Set excl dialect # Delimiter ; is required so columns are detected properly writer = csv.writer(f, dialect=csv.excel, delimiter=';') # Option 1 dict_writer = csv.DictWriter(f, dialect=csv.excel, delimiter=';', fieldnames=['a', 'b', 'c']) # Option 2 # Continiue normally