Recuperer x et y pour j fichiers
ekip667
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour tout le monde,
Je sais comment récuperer les valeurs x et y d'un fichier csv/dat/txt par exemple comme ceci :
Mais depuis un moment j'essaie de récuperer les valeurs x_j et y_j des fichier "Fichier_j.dat" pour cela je passe par des dictionnaires car comme cela si j'ai deux fichiers : Fichier_0.dat et Fichier_1.dat j'aurais : x[0] = [les valeurs de x du fichier_0.dat]
y[0] = [les valeurs de y du fichier_0.dat]
x[1] = [les valeurs de x du fichier_1.dat]
y[1] = [les valeurs de y du fichier_1.dat]
J'ai donc écris ceci mais cela me donne les valeurss de x et y du fichier 0 et cela me dit j = 97 (j'ai 100 valeurs dans mon fichier) :
Merci de votre aide, je bloque réelement sur ce point
Je sais comment récuperer les valeurs x et y d'un fichier csv/dat/txt par exemple comme ceci :
def lire(file,n = 0,enc = 'utf-8'): x,y = [],[] with open(file,'r',encoding = enc) as file: i = 0 for k in file: if i >= n: ligne = k.split(" ") y.append(float(ligne[2])) x.append(float(ligne[1])) i = i+1 return y,x y,x=lire("Fichier_0.dat",enc="latin-1")
Mais depuis un moment j'essaie de récuperer les valeurs x_j et y_j des fichier "Fichier_j.dat" pour cela je passe par des dictionnaires car comme cela si j'ai deux fichiers : Fichier_0.dat et Fichier_1.dat j'aurais : x[0] = [les valeurs de x du fichier_0.dat]
y[0] = [les valeurs de y du fichier_0.dat]
x[1] = [les valeurs de x du fichier_1.dat]
y[1] = [les valeurs de y du fichier_1.dat]
J'ai donc écris ceci mais cela me donne les valeurss de x et y du fichier 0 et cela me dit j = 97 (j'ai 100 valeurs dans mon fichier) :
nbre = 2 def lire(file,n = 0,enc = 'utf-8'): x,y = {},{} for j in range(0,nbre): with open("Fichier_" +str(j)+ ".dat",'r',encoding = enc) as file: i = 0 for k in file: if i >= n: ligne = k.split(" ") x[j] = float(ligne[0]) y[j] = float(ligne[1]) i = i+1
Merci de votre aide, je bloque réelement sur ce point
Configuration: Linux / Chrome 80.0.3987.132
A voir également:
- Recuperer x et y pour j fichiers
- Site x - Guide
- Sites X : Pornhub, YouPorn et Redtube sont de nouveau accessibles en France - Guide
- Recuperer message whatsapp supprimé - Guide
- Récupérer mon compte facebook désactivé - Guide
- Photoscape x - Télécharger - Retouche d'image
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, tu ne nous montres n'y comment tu appelles la fonction, ni comment tu exploites les résultats.
oui en effet pardon j'ai fait n'importe quoi. Je viens de réecrire quelque chose mais j'ai ici le probleme que mes valeurs ne s'ajoute pas à mon dico je sais que pour une liste c'est .append mais ici je ne sais pas . Du coup j'obtiens x[0] = [derniere valeur de x de Fichier_0]
x[1] = [derniere valeur de x de Fichier_1]
y[0] = [derniere valeur de y de Fichier_0]
y[1] = [derniere valeur de y de Fichier_1]
Merci encore
x[1] = [derniere valeur de x de Fichier_1]
y[0] = [derniere valeur de y de Fichier_0]
y[1] = [derniere valeur de y de Fichier_1]
nbre = 2 x,y = {},{} n=0 for j in range(0,nbre): with open("Fichier_" +str(j)+ ".dat",'r',encoding = "latin-1") as file: i = 0 for k in file: if i >= n: ligne = k.split(" ") x[j] = float(ligne[1]) y[j] = float(ligne[2]) i = i+1
Merci encore
je ne comprends pas pourquoi tu ne continues pas la même technique avec append.
exemple:
exemple:
nbre = 2 x,y = [[]],[[]] n=0 for j in range(0,nbre): x.append y.append print("=== ",x,y,"===") i = 0 for k in range(0,nbre+3): if i >= n: print(x,j,y) x[-1].append( "x "+str(j)+" "+str(k)) y[-1].append( "y "+str(j)+" "+str(k)) i = i+1 print(x,y)
Je viens d'ecrire ça donc je recupere dans une liste et je transfére dans un dictionnaire mais le probléme c'est que ma liste contient les x et y des deux fichiers (pour j=0 et j=1) donc mon dictionnaire est deux fois plus grand avec des doublons dans les valeurs .
nbre = 2 x,y = {},{} xx = [] yy = [] n=0 for j in range(0,nbre): with open("Fichier_" +str(j)+ ".dat",'r',encoding = "latin-1") as file: i = 0 for k in file: if i >= n: ligne = k.split(" ") xx.append(float(ligne[1])) yy.append(float(ligne[2])) x[j] = xx y[j] = yy i = i+1