Määritelmä: CSV (pilkuilla erotettu arvo) on samanlainen kuin tekstitiedosto, jossa tallennetut tiedot erotetaan erottimella (yleensä pilkulla). Jokainen kenttä erotetaan erottimella. Pythonissa CSV-tiedostot käsitellään CSV-moduulin avulla. Joten meidän on tuotava tämä moduuli.
Esim: Tuo csv
Seuraava esimerkki näyttää tapa, jolla tiedot tallennetaan CSV-tiedostoon. Tässä pilkkua käytetään erottimena.
Tiedostonimi: person_info.csv
etunimi, toinen nimi, sukunimi, ikä
Anand, kumar, matematiikka, 31
Sachin, ramesh, tendulakar, 40
Virendra, sehwag, singh, 38
Rahul, dravid, xyz, 40
CSV-tiedosto voidaan avata missä tahansa seuraavista tiloista:
r -> lukutila
w -> kirjoitustila
a -> liitä tila
Pythonissa tiedostotoiminto suoritetaan seuraavassa järjestyksessä:
- Avaa tiedosto;
- Lue, kirjoita tai liitä. Kun määritämme kirjoitustilan, tiedosto avataan kirjoitustilassa, jos tiedosto on olemassa, muuten se aikoo luoda tiedoston. Tämä pätee myös liitetilaan. Jos tiedosto on olemassa lukutilassa, se avaa tiedoston lukutilassa, muuten se heittää FileNotFoundError-poikkeuksen; ja
- Sulje tiedosto.
Avaa csv-tiedosto
Sisäänrakennettua menetelmää open () käytetään.
Esim .:
- f = avoin (“tiedostonimi.csv ”,” r ”) # csv pythonissa oletusasetus on lukutila
- f = avoin (“tiedostonimi.csv ”, 'w') # kirjoitustila
Tiedoston sulkeminen
Sisäänrakennettua menetelmää close () käytetään.
fp = open ("tiedostonimi.csv ", 'w')# suorittaa joitain tiedostotoimintoja
fp.kiinni()
Tiedostotoiminnot käyttämällä
Paras tapa suorittaa CSV-tiedostotoiminta ja yleisimmin käytetty menetelmä on lause. Tämän käyttäminen varmistaa, että tiedosto suljetaan, kun sisällä oleva lohko poistuu.
Esim .:
kanssa open ('tiedostonimi.csv ',' w ', koodaus =' utf-8 ') fp:# suorita joitain tiedostotoimintoja
#lauseet lohkon ulkopuolella
Kun poistumme estolla, tiedosto suljetaan automaattisesti.
Kirjoita CSV-tiedostoon
CSV-tiedostoon kirjoittamiseksi meidän on avattava se kirjoitustilassa 'w' tai liitettävä 'a' -tila.
Alla olevassa esimerkissä aiomme lukea yhdestä tiedostosta ja kirjoittaa uuteen tiedostoon.
tuo csvkanssa open ('tiedostonimi.csv ',' r ') fp:
lukija = csv.lukija (fp) #read-tiedosto
kanssa open ('uusi tiedostonimi.csv ',' w ') fq:
kirjailija = csv.kirjoittaja (fq, erotin = '-')
riville lukijassa: # Toistaaksesi jokaisen rivin
kirjailija.writerow (line) #write rivi uuteen tiedostoon
Sanakirjan kirjoittajan käyttö
Alla olevassa esimerkissä aiomme lukea yhdestä tiedostosta ja kirjoittaa uuteen tiedostoon DictWriter () -menetelmällä.
tuo csvkanssa open ('tiedostonimi.csv ',' r ') fp:
lukija = csv.DictReader (fp) #luettu tiedosto
kanssa open ('uusi tiedostonimi.csv ',' w ', newline = ") kuten fq: #newline =" välttääksesi ylimääräisen uuden rivin lisäämisen
rivinimet = ['etunimi', 'keskimmäinen nimi', 'sukunimi', 'ikä']
kirjailija = csv.DictWriter (fq, kentänimet = rivinimet, erotin = '-')
kirjailija.writeheader () # kirjoita otsikkorivit
riville lukija:
kirjailija.kirjailija (rivi)
Kirjoitussarjat ()
Tämä menetelmä kirjoittaa useita rivejä kerrallaan; meidän on lähetettävä luettelo luetteloista. Esim .:
tuo csvhead_names = ['etunimi', 'toinen nimi', 'sukunimi', 'ikä']
# CSV-tiedoston tietoriviä
rivit = [['Anand', 'kumar', 'matematiikka', 31],
['Sachin', 'ramesh', 'tendulakar', 40],
['Virendra', 'sehwag', 'singh', 38],
['Rahul', 'dravid', 'xyz', 40]]
# kirjoittaminen csv-tiedostoon
kanssa open ('uusi tiedostonimi.csv ',' w ') fp:
# luodaan csv-kirjoittajaobjekti
csvwriter = csv.kirjailija (fp)
# kirjoita otsikko
csvwriter.writerow (head_names)
# kirjoita tietorivit
csvwriter.kirjoittajat (rivit)
Luetaan tiedostosta
CSV-tiedoston lukemiseksi Pythonissa meidän on avattava tiedosto lukutilassa 'r'. Esim .:
tuo csvkanssa open ('tiedostonimi.csv ',' r ') fp:
data = csv.lukija (fp)
#default erotin on pilkku, jos muilla erottimilla erotettu csv on määritettävä
#Ex data = csv.lukija (fp, erotin = '-')
tulosta (data) # se palauttaa objektin
# ohittaa otsikko
seuraava (data) # kutsu seuraava generaattorin menetelmä
riville tiedoissa: # Voit toistaa jokaisen rivin
tulosta (rivi) # tulosta kukin arvo luettelosta
fp.seek (0) # tuo kohdistin ensimmäiselle riville
riville tiedoissa:
tulosta (rivi [0]) # tulosta vain etunimet
Sanakirjalukijan käyttö
Csv-tiedoston lukeminen DictReader () -menetelmällä.
tuo csvkanssa open ('tiedostonimi.csv ',' r ') fp:
lukija = csv.DictReader (fp) #luettu tiedosto
riville lukija:
tulosta (viiva) # tulosta kukin rivi sanakirjan muodossa
fp.etsi (0) # tuo kohdistin ensimmäiselle riville
tiedot lukijalle:
tulosta (data ['ikä']) # voimme tulostaa vain iän käyttämällä 'ikä' -näppäintä
Johtopäätös
Olemme oppineet lukemaan ja kirjoittamaan tiedostoja CSV-moduulin avulla. CSV-tiedosto on automaatioteollisuuden yleisimmin käytetty tiedostomuoto, koska tietoja on helppo lukea ja muokata. Lisäksi Pandas on toinen menetelmä, jota voimme käyttää CSV-tiedostojen käsittelemiseen.