bts:python:stocker_valeurs
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Warning: Undefined array key 2 in /home/goupillf/wiki.goupill.fr/lib/plugins/codeprettify/syntax/code.php on line 214
Stocker un tableau de valeur dans un fichier
Pour travailler, vous devez :
- lancer le logiciel désiré. Par exemple EduPython,
- créer un nouveau fichier programme avec
CTRL+N, - enregistrer aussitôt ce fichier (avec
CTRL+S) pour lui donner un nom, - vous pouvez maintenant commencer à écrire le script,
- quand vous avez fini, vous pouvez lancer l'exécution (
CTRL+E)
On a écrit un programme qui fait des calculs et on voudrait stocker les résultats dans un fichier. Pour illustrer, nous reprenons la fonction de Tracer une courbe.
Suite à la définition de la fonction et à la fabrication des listes liste_x et liste_y, nous avions :
from math import exp
from numpy import linspace
def f(x):
return exp(-(x-3)**2)
liste_x = linespace(0,10,100) # 100 valeurs de 0 à 10
liste_y = [f(x) for x in liste_x]
Fichier csv
Le fichier texte que l'on veut créer est un fichier csv : comma separated values, c'est à dire des données séparées par une virgule. Voici à quoi ressemblera le contenu du fichier csv voulu (quelques premières lignes)
0.0,0.00012340980408667956 0.10101010101010101,0.00022393775270322926 0.20202020202020202,0.00039814633279967626 0.30303030303030304,0.0006935789052571739 0.40404040404040403,0.0011838230273274724 0.5050505050505051,0.001979773207804922 0.6060606060606061,0.003244007528924179
Voici ce que nous allons devoir faire :
- ouvrir le fichier en mode écriture (s'il n'existe pas, il est créé)
- pour chaque paire
x,ycontenue dans les tableauxliste_xetliste_y:- convertir
xetydans une forme texte, car le fichier contient du texte - fabriquer une ligne de texte avec
x, puis,, puisy, puis le saut de ligne\n - écrire cette ligne
- fermer le fichier.
from math import exp
from numpy import linspace
def f(x):
return exp(-(x-3)**2)
liste_x = linespace(0,10,100) # 100 valeurs de 0 à 10
liste_y = [f(x) for x in liste_x]
f = open('data.csv', 'w') # ouverture en mode écriture
n = len(liste_x) # n = nombre de valeurs
for i in range(n): # i va de 0 à n-1
x = liste_x[i] # lecture de la ieme valeur x
y = liste_y[i] # lecture de la ieme valeur y
f.write(str(x) + ',' + str(y) + '\n')
f.close() # fermeture du fichier
Exécutez. Le fichier data.csv est créé ! Vous pouvez l'ouvrir mais attention : n'utilisez pas excel ! vous pouvez l'ouvrir avec le bloc-notes.
bts/python/stocker_valeurs.txt · Dernière modification : de goupillwiki
