Bonjour à tous !

débutant sous python, j'ai un problème bien étrange que je ne comprends pas ...

Je parcours une liste, pendant ce parcours, je créer un dictionnaire, pour creer une autre liste à partir de ce dictionnaire.

L'exemple est très simple, j'ai même initialisé ma 1ière liste en dur pour le test :

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
 
        listMetasFound=["machin", "truc", "bidule", "chouette"]
 
        dictSetMetadataGridField={}
        listSetMetadataGridField=[]
 
        for i_meta in range(len(listMetasFound)):
 
            print "\nlistSet 2", listSetMetadataGridField             
            dictSetMetadataGridField["content"]=listMetasFound[i_meta]
 
            print "\nlistSet 3", listSetMetadataGridField
            print " \n ----------------- APPEND ------------------ \n"
            listSetMetadataGridField.append(dictSetMetadataGridField)
 
 
        print " \n*** End ***\n"    
        print listSetMetadataGridField
Le problème, c que des que j'initialise dictSetMetadataGridField, le contenu de ma liste se modifie sans rien que je fasse. Et tous les élements de ma liste prennent la valeur du dictionnaire en cours ...

Voici ce que m'affiche la console :

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
listSet 2 []

listSet 3 []


--------------- APPEND --------------- 


listSet 2 [{"content":"machin"}]

listSet 3 [{"content":"truc"}]

voila deja ici c pas normal !! 

--------------- APPEND --------------- 

listSet 2 [{"content":"truc", "content":"truc"}]

listSet 3 [{"content":"bidule"}, {"content":"bidule"}]

Pareil !! 

--------------- APPEND ---------------
Je ne comprends vraiment pas, pouvez vous m'aider ??

Merci bien !

@+.