Liste de dictionnaire python
Bonjour,
J'ai une liste de 8 dictionnaires. Je cherche a créer un nouveau dictionnaire dont les clés sont les valeurs de la première clé de chaque dictionnaires, et dont la valeur associée est le reste des dictionnaire de départ.
Exemple :
Merci :)
J'ai une liste de 8 dictionnaires. Je cherche a créer un nouveau dictionnaire dont les clés sont les valeurs de la première clé de chaque dictionnaires, et dont la valeur associée est le reste des dictionnaire de départ.
Exemple :
[{"a":"1", "b":"2"}, {"a":"3", "b":"4"}] devient {"1":{"b":"2"}, "3":{"b":"4"}}.
Merci :)
2 réponses
-
-
Bonjour,
À mon avis ce que tu cherches à faire ne tient pas vraiment debout (c'est ce qui me fait douter que c'est un exercice) car :- tu peux avoir des collisions au niveau des clés du nouveau dicitionnaire
- la notion de première clé n'est pas bien définie (est-ce la première paire retournée par
items()
, sans tenir compte du fait qu'il n'est pas garanti que tu itères sur les clés par ordre croissant).
Modulo ces quelques questions, ce que tu cherches ressemble à ça :
ds = [{"a":"1", "b":"2"}, {"a":"3", "b":"4"}] r = dict() for d in ds: (k, v) = list(d.items())[0] r[v] = { k_ : v_ for (k_, v_) in d.items() if k != k_ } print(r)
Bonne chance