CSV -Dateibehandlung in Python

CSV -Dateibehandlung in Python
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.