Bonjour à tous,
Je dispose d'un fichier excel avec deux colonnes, je le lis, puis je crée un dictionnaire qui contient en clé les valeurs de la première colonne, et en valeurs les "valeurs" de la seconde colonne.
Mon but est d'assimiler les clés de ce dictionnaire à une colonne de données présente dans un autre fichier (ces données correspondent aux valeurs de mon dictionnaire).
Seulement lorsque je lis mon autre fichier et que je fais ma boucle, je perds les données de mon dictionnaire et la comparaison n'a pas lieu, je ne sais pas si je suis très clairle code sera peu être plus parlant :
Je n'ai pas de soucis de compilation, mais le dico que j'utilise dans ma seconde boucle est "vidé" de ses valeurs, ma comparaison ne me renvoie donc aucun "ok". Je voudrais donc savoir comment réutiliser mon dico dans le nouveau fichier de lecture.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 File = open("mart_export-1.txt","r") # r indique lecture File2 = open("BIOGRID-ORGANISM-Homo_sapiens-3.1.81.tab2.txt","r") # r indique lecture dico={} for ligne in File.readlines(): ligne = ligne.rstrip('\n') # on retire le dernier caractere (retour chariot) cols = ligne.split(',') # Decoupage de la ligne pour recuperer les differents elements if dico.has_key(cols[0])==False: #si la valeur lue n'est pas une cle du dico, alors on l'ajoute dico[cols[0]]= cols[3] # on attribut a cette cle la valeur situee dans la colonne 3 (IDENTREZ) else: pass for ligne2 in File2.readlines(): ligne2 = ligne2.rstrip('\n') # on retire le dernier caractere (retour chariot) cols2 = ligne2.split(' ') # Decoupage de la ligne pour recuperer les differents elements if dico.values() == cols2[1]: # si la valeur de la colonne correspond a la valeur de mon dico : ok print "ok"
J'espère avoir été clair je m'y perds moi même parfois
Merci à vous
Partager