Analyser les données CSV en Python
Python offre un support intégré pour travailler avec les données CSV grâce au module csv
. Ce module propose un moyen simple et efficace de lire, d'écrire et de manipuler les fichiers CSV.
Lecture des données CSV
Pour lire un fichier CSV en Python, vous pouvez utiliser la fonction csv.reader()
. Cette fonction prend un itérable (comme un objet fichier) et renvoie un objet lecteur qui peut être utilisé pour parcourir les lignes du fichier CSV.
import csv
with open('data.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
La fonction csv.reader()
prend également en charge diverses options, telles que la spécification du délimiteur, la gestion des lignes d'en-tête et le traitement des valeurs entre guillemets.
Écriture de données CSV
Pour écrire des données dans un fichier CSV, vous pouvez utiliser la fonction csv.writer()
. Cette fonction prend un itérable (comme un objet fichier) et renvoie un objet écrivain qui peut être utilisé pour écrire des lignes dans le fichier CSV.
import csv
data = [['Name', 'Age', 'City'],
['John Doe', 35, 'New York'],
['Jane Smith', 28, 'Los Angeles'],
['Bob Johnson', 42, 'Chicago']]
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(data)
La fonction csv.writer()
prend également en charge diverses options, telles que la spécification du délimiteur, la gestion des lignes d'en-tête et la mise en forme des données.
Gestion des dialectes CSV
Le module csv
de Python prend également en charge la gestion de différents « dialectes » du format CSV. Un dialecte est un ensemble de paramètres qui définissent la structure du fichier CSV, comme le délimiteur, le comportement de mise entre guillemets et le terminateur de ligne.
Vous pouvez définir des dialectes personnalisés à l'aide de la fonction csv.register_dialect()
, puis les utiliser avec les fonctions csv.reader()
et csv.writer()
.
import csv
## Register a custom dialect
csv.register_dialect('custom', delimiter=';', quotechar='"', quoting=csv.QUOTE_MINIMAL)
with open('data.csv', 'r') as file:
reader = csv.reader(file, dialect='custom')
for row in reader:
print(row)
En comprenant les capacités du module csv
en Python, vous pouvez analyser efficacement et travailler avec les données CSV dans vos applications.