Bonjour,

je dispose d'une liste de dictionnaires et je voudrai stocker dans une liste les clés qui sont communes à tous les dictionnaires ainsi que les valeurs associées à ces dicos. J'ai trouvé un topic assez similaire de michel42 avec une réponse complète de mont29, cependant mon niveau de Python est clairement trop faible pour appliquer ( et surtout comprendre) ce code

Voici ce que j'ai fait :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
# mes_dicos est une liste de dictionnaires
L=[] # L va contenir des tuples contenant les clé / valeurs des dicos
	for id, value in mes_dicos[0].items(): # je prends comme référence le 1er dico de la liste
		for i,dico in enumerate(mes_dicos): # je parcours tous mes dicos
 
			if id in mes_dicos[i] and id in mes_dicos[len(mes_dicos)-1]: # je test si la clé est commune à tous mes dicos
				L.append((id,mes_dicos[i].get(cle))) # si oui j'ajoute les éléments à ma liste
Le problème vient de ma condition, je teste juste si la clé issue du dico de référence est présente dans le dico numéro i et dans le dernier dico. Ma condition ne permet pas de tester l'ensemble des dictionnaires de ma liste.

Y aurait'il un moyen "simple" de réussir à tester la clé issue de mon dico de référence contre toutes les autres clés ? (Je ne sais pas à l'avance de combien de dicos sera composée ma liste).

Merci à vous