CSV-faili kirjutamine¶
CSV (comma-separeted values) on tekstifail, kus andmed on eraldatud eraldajaga (tavaliselt koma või semikoolon). Esimesel real on tavaliselt veergude pealkirjad. Igal järgmisel real on andmed.
Näide CSV-failist, kus eraldaja on semikoolon (;):
Name;Department;Birthday month
John Smith;Accounting;November
Erica Meyers;IT;March
CSV-faili kirjutamiseks tuleb kõigepealt avada fail kirjutamiseks. Seejärel saab luua CSV-kirjutaja sellest faili objektist.
import csv
data = [
['John Smith', 'Accounting', 'November'],
['Erica Meyers', 'IT', 'March']
]
with open('file.csv', 'w', newline='') as csv_file:
csv_writer = csv.writer(csv_file, delimiter=";")
# header
csv_writer.writerow(['Name', 'Department', 'Birthday month'])
for row in data:
# write list of values
csv_writer.writerow(row)
Koodinäite puhul tuleb tähele panna, et faili avades anname kaasa newline=''
.
Kuna csv.writer
ise lisab iga rea lõppu reavahetuse, siis tekiks topelt-reavahetus.
Seepärast on faili avamisel määratud reavahetuseks tühisõne (reavahetus tekib vaid CSV kirjutajast).
Ühtlasi CSV kirjutaja objekti luues anname kaasa eraldajaks semikooloni.
Andmeid kirjutatakse faili järjendina - elementide vahele pannakse määratud eraldaja.