Meghatározás: A CSV (vesszővel elválasztott érték) hasonló egy szöveges fájlhoz, ahol a tárolt adatokat elválasztja egymástól (általában vesszővel). Minden mezőt elválaszt egy elválasztó. A Pythonban a CSV fájlokat a CSV modul segítségével dolgozzák fel. Tehát be kell importálnunk ezt a modult.
Volt: import csv
Az alábbi példa bemutatja az adatok CSV-fájlban történő tárolásának módját. Itt vesszőt használunk elválasztóként.
Fájlnév: person_info.csv
keresztnév, középnév, vezetéknév, életkor
Anand, kumar, matematika, 31
Sachin, ramesh, tendulakar, 40
Virendra, sehwag, singh, 38
Rahul, dravid, xyz, 40
A CSV fájl a következő módok bármelyikében megnyitható:
r -> olvasási mód
w -> írási mód
a -> függelék mód
A Pythonban egy fájlműveletet a következő sorrendben hajtanak végre:
- Nyisson meg egy fájlt;
- Olvasson, írjon vagy csatoljon. Amikor megadjuk az írási módot, a fájl írási módban megnyílik, ha a fájl létezik, ellenkező esetben egy fájlt fog létrehozni. Ez a függelék módra is érvényes. Olvasási módban, ha létezik fájl, akkor olvasási módban nyitja meg a fájlt, ellenkező esetben a FileNotFoundError kivételt dobja; és
- Zárja be a fájlt.
Nyisson meg egy csv fájlt
A beépített metódust open () használják.
Volt:
- f = nyitott („fájlnév.csv ”,” r ”) # A csv pythonban alapértelmezés szerint az olvasási mód van
- f = nyitott („fájlnév.csv ”, 'w') # írási mód
Fájl bezárása
Beépített bezárás () módszert használunk.
fp = open ("fájlnév.csv ", 'w')# végezzen néhány fájlműveletet
fp.Bezárás()
Fájlműveletek a
A CSV fájlművelet végrehajtásának legjobb módja és a leggyakrabban használt módszer az utasítással történik. Ennek használata biztosítja, hogy a fájl bezáruljon, amikor a benne lévő blokk kilép.
Volt:
megnyitva ('fájlnév.csv ',' w ', encoding =' utf-8 ') mint fp:# végezzen el néhány fájlműveletet
# állítás a blokkon kívül
Amikor blokkkal lépünk ki, a fájl automatikusan bezáródik.
Írjon egy CSV fájlba
CSV fájlba történő íráshoz meg kell nyitnunk „w” írással vagy hozzá kell fűznünk egy „a” módot.
Az alábbi példában egy fájlból fogunk olvasni és új fájlba írni.
import csva nyílt ('fájlnév.csv ',' r ') mint fp:
olvasó = csv.olvasó (fp) # olvasott fájl
az open ('új fájlnév.csv ',' w ') mint fq:
író = csv.író (fq, határoló = '-')
az olvasó sorához: # Minden sor ismétléséhez
író.writerow (line) #write írása új fájlba
Szótáríró használata
Az alábbi példában egy fájlból fogunk olvasni és új fájlba írni a DictWriter () módszerrel.
import csva nyílt ('fájlnév.csv ',' r ') mint fp:
olvasó = csv.DictReader (fp) # olvasott fájl
az open ('új fájlnév.csv ',' w ', newline = ") mint fq: #newline =" az új sor hozzáadásának elkerülése érdekében
row_names = ['keresztnév', 'középső név', 'vezetéknév', 'kor']
író = csv.DictWriter (fq, mezőnevek = sornevek, elválasztó = '-')
író.writeheader () # címsorok írása
az olvasó sorához:
író.író (sor)
Írósorok ()
Ez a módszer egyszerre több sort ír; át kell adnunk a listák listáját. Volt:
import csvhead_names = ['keresztnév', 'középső név', 'vezetéknév', 'kor']
# csv fájl adatsor
sorok = [['Anand', 'kumar', 'matek', 31],
['Sachin', 'ramesh', 'tendulakar', 40],
['Virendra', 'sehwag', 'singh', 38],
['Rahul', 'dravid', 'xyz', 40]]
# írás csv fájlba
az open ('új fájlnév.csv ',' w ') mint fp:
# csv író objektum létrehozása
csvwriter = csv.író (fp)
# írja a címsort
csvwriter.író (fej_nevek)
# írja az adatsorokat
csvwriter.írósorok (sorok)
Olvasás fájlból
A CSV fájl Pythonban történő olvasásához meg kell nyitnunk a fájlt „r” olvasási módban. Volt:
import csvmegnyitva ('fájlnév.csv ',' r ') mint fp:
adatok = csv.olvasó (fp)
Az #default elválasztó vessző, ha a csv-t más határolóval elválasztva meg kell adni
#Ex adatok = csv.olvasó (fp, elválasztó = '-')
print (data) # it return object
# a fejléc kihagyása
next (data) #call next módszer a generátorhoz
az adatok sorához: # Minden sor ismétléséhez
nyomtat (vonal) # kinyomtatja a lista minden értékét
fp.seek (0) # hozza a kurzort az első sorba
az adatok sorához:
nyomtatás (sor [0]) # csak keresztnevek nyomtatása
Szótárolvasó használata
A csv fájl olvasása DictReader () módszerrel.
import csva nyílt ('fájlnév.csv ',' r ') mint fp:
olvasó = csv.DictReader (fp) # olvasott fájl
az olvasó sorához:
print (line) #print minden sort diktátum formájában
fp.seek (0) # hozza a kurzort az első sorba
adatok az olvasóban:
nyomtatás (adatok ['életkor']) # csak az életkort nyomtathatjuk az 'age' billentyű használatával
Következtetés
Megtanultuk, hogyan kell fájlokat írni és írni a CSV modul segítségével. A CSV fájl a leggyakrabban használt fájlformátum az automatizálási iparban, mert könnyen olvasható és módosítható az adat. Ezenkívül a Pandas egy másik módszer, amelyet CSV fájlok feldolgozására használhatunk.