CSV-failidega (CSV-failid, Comma-Separated Values) töötamine on programmeerimises tavaline ülesanne, mis avaldub paljudes praktilistes rakendustes. Olgu need siis API-de andmed või laovarude haldamine — CSV-failide lugemise ja kirjutamise võimalus on hädavajalik. Selles juhendis õpid, kuidas töötada CSV-failidega tõhusalt Pythonis. Vaadakem CSV-failide loomist, andmete lugemist ja nende andmete manipuleerimist.

Olulised teadmised

  • Modulite ülevaade: Python pakub sisseehitatud CSV-moodulit, mis sisaldab CSV-lugejat ja kirjutajat.
  • Andmestruktuur: Sa saad kasutada nii loendite kui ka sõnaraamatute vormingut, et andmeid salvestada ja töödelda.
  • Tõhus E/A-käitlus: Kasuta with open(...) faili avamiseks, et mitte enam failide sulgemise pärast muretseda.

Samm-sammuline juhend

Katalooge luua ja CSV-faili luua

Alustuseks loo tühi kataloog. Selles kataloogis peaksid looma faili nimega csvdateien.py. See fail saab olema sinu peamine skript CSV-failide töötlemiseks.

Tõhus CSV-failide töötlemine Pythoniga

Oma Python-failis saad luua CSV-faili, kasutades nime produkte.csv. Selles failis määratled sa veerud pealkirjadega Toote ID, Nimi, Hind ja Laovarud.

Tõhus CSV-failide töötlemine Pythoniga

CSV-fail võib näiteks välja näha selline:

Toote ID,Nimi,Hind,Laovarud 1,iPad,399,50 2,Nerfgun,29.99,100

CSV-faili lugemine

Andmete lugemiseks failist produkte.csv vajad sa CSV-moodulit. Moodul võimaldab sul CSV-andmeid tõhusalt töödelda. Sa saad andmed lugemiseks sobivasse vormingusse muuta, kasutades with open(...). See väldib failiobjektide käsitsi sulgemist ja muudab sinu koodi puhtamaks ja turvalisemaks.

Järgmisel sammul lood CSV-lugeja. Sellega saad faili läbi lugeda rida-realt ja andmed välja võtta:

import csv

with open('produkte.csv', newline='', encoding='utf-8') as csvfile: csvreader = csv.reader(csvfile) for row in csvreader: print(row)

Tõhus CSV-failide töötlemine Pythoniga

Iga rida loetakse loendina, mis näitab, et andmed on ootuspäraselt struktureeritud. Iga rida vastab ühele tootele ja sisaldab teavet ID, Nimi, Hind ja Laovarud kohta.

Sõnaraamatute kasutamine intuitiivsemaks andmete töötlemiseks

Andmete lihtsamaks ja intuitiivsemaks haldamiseks peaksid kasutama sõnaraamatu vormingut. Sõnaraamatute lugejaga saad andmetele juurdepääsu vastavalt väljade nimedele.

Tõhus CSV-failide töötlemine Pythoniga

Siin vajad samuti with open(...), et avada fail ja luua CSV-lugeja. Veendu, et annad välja nimekirja väljade nimedest, mida soovid lugeda:

with open('produkte.csv', newline='') as csvfile: fieldnames = ['Toote ID', 'Nimi', 'Hind', 'Laovarud'] csvreader = csv.DictReader(csvfile, fieldnames=fieldnames) for row in csvreader: print(row)
Tõhus CSV-failide töötlemine Pythoniga

Nüüd saad lihtsalt väljadele juurdepääsu nimede kaudu. See muudab sinu töötlemise palju hõlpsamaks.

CSV-faili kirjutamine

Oma andmete kirjutamiseks CSV-faili saad kasutada sõnaraamatu kirjutamisobjekti. Sa saad luua sõnaraamatute nimekirja, mis esindavad sinu andmeid.

Efektiivne CSV-failide töötlemine Pythoniga

Siin on lihtne näide, kuidas saad salvestada nimekirja superkangelastest CSV-failina:

superhelden = [ {'Nimi': 'Tony Stark', 'Alias': 'Iron Man'}, {'Nimi': 'Peter Parker', 'Alias': 'Spider-Man'}, {'Nimi': 'Oliver Queen', 'Alias': 'Green Arrow'}
]

with open('superhelden.csv', 'w', newline='') as csvfile: fieldnames = ['Nimi', 'Alias'] writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

writer.writeheader()
for held in superhelden: writer.writerow(held)
Tõhus CSV-failide töötlemine Pythoniga

Faili superhelden.csv luuakse nüüd ja see sisaldab superkangelaste andmeid hästi struktureeritud, loetavas vormingus.

Lõpetamine ja praktiline rakendus

CSV-failid on väärtuslik tööriist andmevahetuseks, mida praktikas tihti vajatakse. See juhend annab sulle alused CSV-failide töötlemiseks Pythonis. Sa oled õppinud, kuidas lugeda andmeid CSV-failidest, neid Pythonis töödelda ja oma andmeid CSV-vormingusse kirjutada.

Kokkuvõte – CSV-failide töötlemine Pythonis

CSV-failid on oluline formaat andmete vahetamiseks paljude rakenduste seas. Pythoniga saad nende failidega efektiivselt ja lihtsalt töötada. Kui oled alused esialgu ära õppinud, saad neid tehnikaid kergesti keerukamate andme rakenduste jaoks rakendada.

Sageli esitatud küsimused

Kuidas avada CSV-fail Pythonis?Sa saad avada CSV-faili Pythonis, kasutades with open('failinimi.csv', 'r'):.

Kuidas võin andmeid CSV-faili kirjutada?Kasutades csv.writeri või csv.DictWriteri objekti, et andmeid vormindada ja faili kirjutada.

Mis vahe on csv.readeril ja csv.DictReaderil?csv.reader loeb andmed loenditena, samas kui csv.DictReader väljendab andmeid sõnaraamatutena, võtmepaaridega.

Kuidas määrata CSV-failis päist?Päis saab määrata writeheader() abil CSV-faili kirjutamisel kirjutaja kaudu.

Kuidas lugeda CSV-faili kohandatud väli nimedega?Anna soovitud väli nimed koos loendiga csv.DictReaderi loomisel.