0
votes

Comment trier le dictionnaire Python par la valeur des clés

J'utilise Python 3.7 pour créer un dictionnaire et vouloir trier le dictionnaire par la valeur des touches.

Par exemple, j'ai un dictionnaire comme ceci:

Exemple xxx

mais je veux qu'il soit xxx

Je ne trouve que des moyens de trier les clés ou les valeurs, mais aucune solution pour trier la valeur de la valeur de clés.

** J'ai trouvé plusieurs questions aux touches de tri uniquement, mais Py3 les triera automatiquement dans l'ordre de "R_1", "R_10", "R_11", ..., "R_2". Ces questions sont différentes de celle-ci.


4 commentaires

Ce n'est pas dupliqué. Je veux trier la valeur des clés, pas seulement les clés. Python 3 triera automatiquement les clés de la manière dont la question posée.


Où est le dict ? Les dictionnaires n'utilisent pas [] notation. Votre photo est également d'une table. Veuillez vous assurer d'avoir un exemple minimal, complet et vérifiable. C'est également déroutant pourquoi vous utilisez ; .


De plus, vous ne devriez pas utiliser dict comme nom de variable depuis dict est un mot-clé (bien qu'ils ne se écrasent pas mutuellement).


Si je comprends bien, vous voulez traiter la partie de la chaîne des touches après _ comme un numéro et trier à ce sujet, vous devez donc extraire cela et trier ce numéro avec une fonction Lambda ...


3 Réponses :


1
votes

OK. Je trouve le chemin le trier mais changera le dictionnaire à la liste. C'est:

Dict = sorted(Dict.items(), key = lambda kv:int(''.join(filter(str.isdigit, kv[0].split("_")[-1]))))


0 commentaires

-1
votes
>>>x= sorted(Dict.items())
>>>x

0 commentaires

3
votes

Utiliser ordonnéDict : xxx


2 commentaires

Merci! Je suis presque en colère que certaines personnes n'ont pas lu la question avec précaution et ramassent l'erreur mineure plutôt que de répondre à ma question, mais votre réponse aime vraiment moi!


Salut @alice. Si vous croyez toujours que la question n'est pas une duplication, vous pouvez en discuter dans les commentaires sous la question. On dirait que les gens ont répondu à cela et croient que c'est encore un duplicata. Vous pouvez ping erreur - Syntaxtical remords sous la question, comme il / elle est un électeur proche.