CSV-Dateien mit Python bearbeiten
11.05.2021, 09:34 Uhr
Keine speziellen Formate
CSV ist ein wichtiges Format, das vor allem für den Austausch von Daten mit Programmen verwendet wird. Wie Sie in Python damit umgehen, erfahren Sie in diesem Beitrag.
Eine CSV-Datei besteht aus reinem Text, also aus druckbaren ASCII- oder Unicode-Zeichen. Das macht die programmseitige Verarbeitung der enthaltenen Daten sehr einfach, da man sich nicht um spezielle Formate und andere Besonderheiten kümmern muss.
Die Daten einer CSV-Datei sind tabellenartig angeordnet, wobei die erste Zeile für die Spaltenüberschriften verwendet werden kann. Innerhalb einer Zeile werden die Daten, also die Spaltenwerte, durch ein festgelegtes Zeichen getrennt. In der Regel ist das ein Komma (csv steht für comma-separated values). Sie können aber auch jedes andere Zeichen verwenden. Da das Komma im deutschen Sprachraum für das Dezimaltrennzeichen vorgesehen ist, verwendet Excel hierzulande als CSV-Trennzeichen zum Beispiel das Semikolon (wenn Sie in Ihren Python-Programmen Zahlenwerte verarbeiten müssen, ist es jedoch sinnvoll, diese Werte in der CSV-Datei gleich mit dem Punkt als Dezimaltrennzeichen zu notieren; ansonsten müssten Sie die Werte im Python-Programmcode erst konvertieren). Die CSV-Datei (Demo.csv), die wir zur Demonstration für die folgenden Codebeispiele verwenden, sieht wie folgt aus (ob eine CSV-Datei mehrere tausend Zeilen mit vielen Daten oder nur ein paar Zeilen mit wenigen Daten hat, macht für die Programmierung keinen wesentlichen Unterschied). Sie speichert für jede Person Vorname und Nachname sowie das Geburtsdatum:
Vorname,Nachname,Geburtstag
Hans,Mustermann,06.02.1977
Elke,Musterfrau,14.05.1980
Anna,Meier,29.07.1992
Herbert,Müller,17.08.1958
Petra,Schmidt,03.01.1990
Jetzt 1 Monat kostenlos testen!
Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
- + Digitales Kundenkonto,
- + Zugriff auf das digitale Heft,
- + Zugang zum digitalen Heftarchiv,
- + Auf Wunsch: Weekly Newsletter,
- + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar