In diesem Thema lernen wir, wie man CSV -Dateien in Python liest und schreibt.
Definition: CSV (Comma Separated Value) ähnelt einer Textdatei, in der die gespeicherten Daten von einem Trennzeichen (normalerweise ein Komma) getrennt werden. Jedes Feld wird durch einen Trennzeichen getrennt. In Python werden CSV -Dateien mit dem CSV -Modul verarbeitet. Also müssen wir dieses Modul importieren.
Ex: Importieren Sie CSV
Das folgende Beispiel zeigt die Art und Weise, wie die Daten in einer CSV -Datei gespeichert werden. Hier wird ein Komma als Trennzeichen verwendet.
Dateiname: Person_info.CSV
Vorname, zweiter Vorname, Nachname, Alter
Anand, Kumar, Math, 31
Sachin, Ramesh, Tendulakar, 40
Virendra, Sehwag, Singh, 38
Rahul, Dravid, Xyz, 40
Die CSV -Datei kann in den folgenden Modi geöffnet werden:
R -> Lesemodus
W -> Schreibmodus
A -> Append -Modus
In Python wird in der folgenden Reihenfolge eine Dateioperation durchgeführt:
- Öffne einen Ordner;
- Lesen, schreiben oder anhängen. Wenn wir den Schreibmodus angeben, wird die Datei im Schreibmodus geöffnet, wenn die Datei vorliegt. Andernfalls wird eine Datei erstellt. Dies gilt auch für den Append -Modus. Wenn eine Datei vorliegt, wird die Datei im Lesemodus geöffnet, da ansonsten die FilenotFoundError -Ausnahme ausgelöst wird. Und
- Schließen Sie die Datei.
Öffnen Sie eine CSV -Datei
Eingebaute Methode Open () wird verwendet.
Ex:
- f = offen (“Dateiname.CSV ”,” R ”) # In CSV Python Standard ist der Lesemodus
- f = offen (“Dateiname.CSV ”, 'W') # Schreibmodus
Eine Datei schließen
Eingebaute Methode Close () wird verwendet.
fp = open ("Dateiname.CSV ", 'W')
# Führen Sie einige Dateioperationen aus
FP.schließen()
Dateioperationen verwendet mit
Der beste Weg, um den CSV -Dateibetrieb und die am häufigsten verwendete Methode durchzuführen, ist die Anweisung. Wenn Sie dies verwenden, stellt sicher.
Ex:
mit offen ('Dateiname.csv ',' w ', coding =' utf-8 ') als FP:
#einige Dateivorgänge ausführen
#statements außerhalb des mit Blocks
Wenn wir mit Block beenden, wird die Datei automatisch geschlossen.
Schreiben Sie in eine CSV -Datei
Um in eine CSV -Datei zu schreiben, müssen wir sie in Schreiben "W" öffnen oder einen "einen" Modus anhängen.
Im folgenden Beispiel werden wir aus einer Datei lesen und in eine neue Datei schreiben.
CSV importieren
mit offen ('Dateiname.CSV ',' R ') als FP:
Reader = CSV.Leser (FP) #Read -Datei
mit Open ('Newfilename.CSV ',' W ') als FQ:
writer = csv.Schriftsteller (FQ, Delimiter = '-')
Für Zeile in Reader:#-To -Iterrate über jede Zeile
Schriftsteller.Writerow (Zeile) #Write -Zeile zur neuen Datei
Verwenden von Wörterbuchautor
Im folgenden Beispiel werden wir aus einer Datei lesen und mit der Methode dictWriter () in eine neue Datei schreiben.
CSV importieren
mit offen ('Dateiname.CSV ',' R ') als FP:
Reader = CSV.Dictreader (FP) #Read -Datei
mit Open ('Newfilename.CSV ',' W ', newline = ") als fq: #newline =", um das Hinzufügen einer zusätzlichen neuen Zeile zu vermeiden
row_names = ['Vorname', 'Mittelname', 'Nachname', 'Alter']
writer = csv.Dictwriter (fq, fieldnames = row_names, delimiter = '-')
Schriftsteller.Recrectheader ()#Schreibübergangsleitungen
Für Zeile im Leser:
Schriftsteller.Writherow (Linie)
Writorows ()
Diese Methode schreibt mehrere Zeilen gleichzeitig; Wir müssen eine Liste von Listen übergeben. Ex:
CSV importieren
head_names = ['Vorname', 'zweiter Name', 'Nachname', 'Alter']
# Datenzeilen der CSV -Datei
Zeilen = ['Anand', 'Kumar', 'Math', 31],
['Sachin', 'Ramesh', 'Tendulakar', 40],
['Virendra', 'Sehwag', 'Singh', 38],
['Rahul', 'Dravid', 'Xyz', 40]]
# Schreiben in CSV -Datei
mit Open ('Newfilename.CSV ',' W ') als FP:
# Erstellen eines CSV -Schriftstellungsobjekts
csvwriter = csv.Schriftsteller (FP)
# Schreiben Sie die Überschrift
CSVWriter.writerow (head_names)
# Schreiben Sie die Datenreihen
CSVWriter.Schriftsteller (Zeilen)
Lesen aus der Datei
Um die CSV -Datei in Python zu lesen, müssen wir die Datei im Lesemodus 'R' öffnen. Ex:
CSV importieren
mit offen ('Dateiname.CSV ',' R ') als FP:
Data = CSV.Leser (FP)
#Default -Trennzeichen ist Comma, wenn CSV von einem anderen Trennzeichen getrennt werden muss
#Ex data = csv.Leser (FP, Delimiter = '-')
Drucken (Daten) # Es gibt Objekt zurück
#Skiping den Header
Weiter (Daten) #CALL Nächste Methode des Generators
Für Zeile in Daten:#-To iTerate über jede Zeile
Drucken (Zeile) # Drucken Sie jeden Wert in einer Liste aus
FP.Suchen Sie (0)# Bringen Sie Cursor in die erste Zeile
Für Zeile in Daten:
Drucken (Zeile [0])# Nur vor Namensnamen drucken
Verwenden von Wörterbuchleser
So lesen.
CSV importieren
mit offen ('Dateiname.CSV ',' R ') als FP:
Reader = CSV.Dictreader (FP) #Read -Datei
Für Zeile im Leser:
Drucken (Zeile) #print jeder Zeile in Form von diktärem
FP.Suchen Sie (0)# Bringen Sie Cursor in die erste Zeile
Für Daten in Reader:
Drucken (Daten ['Alter'])#Wir können nur das Alter drucken, indem wir "Alter" -Taste verwenden
Abschluss
Wir haben gelernt, wie man eine Datei mit dem CSV -Modul liest und schreibt. Die CSV -Datei ist das am häufigsten verwendete Dateiformat in der Automatisierungsbranche, da sie einfach zu lesen und zu ändern ist. Außerdem ist Pandas eine andere Methode, mit der wir CSV -Dateien verarbeiten können.