Een CSV-bestand (Comma Separated Values) is een bestand met platte tekst waarin elke waarde wordt gescheiden door een komma.
Excel kan CSV-bestanden openen. Dit is erg handig omdat het betekent dat je je gegevens vanuit Python in csv kunt opslaan en vervolgens in Excel kunt openen.
In dit artikel leert u hoe u een CSV-bestand in Python kunt inlezen.
Voordat u met csv-gegevens gaat werken, is het nodig om Python te leren.
Inleiding
Elke regel van het CSV-bestand wordt een record genoemd, elk record heeft waarden die door komma's worden gescheiden.
De waarden worden gescheiden door een zogenaamde delimiter, de standaard waarde is de komma. U kunt kiezen voor een ander scheidingsteken, zoals een puntkomma (;) of een pipe (|).
Hieronder ziet u de structuur van een gewoon CSV-bestand.
1,Alice,Cook,32
2,Bob,Portier,34
3,Chris,Elektricien,24
4,Dave,Veldwerker,44
Kopieer de gegevens en sla ze op als voorbeeld.csv
.
Waarom CSV?
CSV-indeling is eenvoudigweg een gewoon tekstbestand. Dat betekent dat u het kunt openen met elke tekstverwerker, maar ook dat het kan worden geopend door elke softwaretoepassing.
U kunt zonder problemen een csv in een spreadsheet of databaseopslag importeren. Het is data-uitwisselbaar.
Elke programmeertaal die met bestanden en strings kan werken, kan met csv-bestandgegevens werken.
CSV-module
U hoeft zelf geen csv lezer te coderen, want om de zoveel tijd heeft Python een module beschikbaar.
De module waar we het over hebben is de csv
module. Deze is al geïnstalleerd, omdat hij deel uitmaakt van de standaardbibliotheek van Python.
U kunt csv-bestanden lezen met de csv
-module, maar ook schrijven.
Om de module te laden typ je:
import csv
Maak dan uw programma aan (read.py)
import csv
# Open het csv-bestand in leesmodus 'r'
with open('voorbeeld.csv', 'r') als f:
# lees het bestand
csvReader = csv.reader(f)
# elke lijn in een lus uitlezen
for regel in csvReader:
print(regel)
Als je het programma uitvoert, zul je zien dat elke regel een Python list is geworden:
➜ ~ python3 read.py
['1', 'Alice', 'Cook', '32']
['2', 'Bob', 'Portier', '34']...
3', 'Chris', 'Elektricien', '24'.
['4', 'Dave', 'Veldwerker', '44'].
➜ ~
Succesvol ingelezen!
Gerelateerde links:
Top comments (0)