Import CSV
Très utile pour traiter des données issues de l'extérieur (acquisition, internet, tableur...)
Pour la préparation du fichier csv, on veillera au formatage (notamment pour le texte). Le plus simple est de formater en UTF8 ; et au caractère de séparation des données. On peut prendre la virgule si les "nombres à virgule" sont au format américain, donc avec des points.
Voici mon fichier issu d'un tableur

Puis exporté en csv avec les options suivantes (par défaut dans libreOffice Calc)

On obtient alors un fichier csv contenant :
1,10
2,15
3,35
4,70
5,150
Import du fichier dans python
Pour lire un fichier csv, il faut un module complément nommé... csv
import csv
Ensuite, trois étapes importantes :
Ouverture du fichier
Création d'un lecteur
Extraction des données
import csv #Importation du module
source = open('extrait.csv','r') #On ouvre le fichier "extrait.csv" contenu dans le même dossier que le fichier python, en lecture 'read'. Le tout est enregistré dans une variable nommé "source".
lecteur = csv.reader(source,delimiter=",") #On créer un lecteur de csv. On précise le délimiteur utilisé
x,y = [],[] #On créer 2 listes vides pour accueillir les données
for rows in lecteur: #On parcourt le lecteur
print(rows) #affiche la ligne
x.append(rows[0]) #stocke la première valeur dans la liste x
y.append(rows[1]) #stocke la 2nd valeur dans la liste y
Attention, le chemin pour le fichier csv doit être connu. Le plus simple est de placer le fichier python et le fichier csv dans le même dossier.
Sinon, il faut utiliser les chemins relatifs. Par exemple avec l'arborescence :
/monscript.py
/donnee/extrait.csv
On utiler le chemin : source = open('donnee/extrait.csv','r')
Autre remarque importante : Ne nommez pas votre fichier python "csv.py", sinon lorsque vous appellerez le module csv il y aura des confusions
Last updated
Was this helpful?