0
J'essaie de trier un ordereddict, mais sans chance. J'ai essayé d'utiliser la méthode trouvée à https://docs.python.org/2/library/collections.html#ordereddict-examples-and-recipesTri triéDict ne fonctionne pas
for d in results:
print(d)
d = OrderedDict(results)
for key in d:
print(d[key])
hi = OrderedDict(sorted(d.items(), key=lambda t: t[0]))
for key in hi:
print(hi[key])
cette imprime:
('GOOG/CPH_43740', -1.6749609142444124)
('GOOG/CPH_CARL_B', 0.66869383328307086)
('GOOG/CPH_CHR', 0.6270772411141563)
('GOOG/CPH_EGE_B', -0.89015989892984237)
('GOOG/CPH_GEN', 0.46485175444884497)
-1.67496091424
0.668693833283
0.627077241114
-0.89015989893
0.464851754449
-1.67496091424
0.668693833283
0.627077241114
-0.89015989893
0.464851754449
qui ne sont pas triées par ordre décroissant. Suis-je totalement perdu ici?
Vous avez explicitement classés par ordre croissant de la clé ** **, ce qui est exactement ce que vous avez . – jonrsharpe
Cela n'aurait pas dû être fermé en double. Le tri par valeur est une chose; en conservant cela dans un nouveau OrderedDict en spécifiant le nouvel ordre d'insertion, vous devez déclarer un nouveau OrderedDict. (cc: @PadraicCunningham) – smci
@ réponse de JacuesdeHooge est juste et je veux rediriger ["retourner un dictionnaire après le tri"] (https://stackoverflow.com/questions/41082822/return-a-dictionary-after-sorting) ici comme canonique. Cela doit être rouvert comme une question distincte en soi. – smci