2 votes

Comment identifier/imprimer la clé ayant la plus grande valeur dans un dicton ?

J'ai trouvé des questions similaires mais aucune n'a résolu mon problème. Suivez cet exemple :

d={'a': 6, 'b': 3, 'c': 8, 'd': 1}

Maintenant je veux imprimer la clé qui a le plus grand nombre (dans ce cas-ci 'c' ) et le plus petit aussi (dans ce cas-ci 'd' ). Réaliser que ce que je veux imprimer est la clé, pas sa valeur.

10voto

Andrej Kesely Points 20452

Utilisez des encastrements min() / max() avec une personnalisation key= paramètre :

d={'a': 6, 'b': 3, 'c': 8, 'd': 1}

print('Min key =', min(d, key=lambda k: d[k]) )
print('Max key =', max(d, key=lambda k: d[k]) )

Imprimés :

Min key = d
Max key = c

1voto

LeadingEdger Points 454

@Mateus, voici un autre moyen qui n'utilise pas les fonctions lambda :

d={'a': 6, 'b': 3, 'c': 8, 'd': 1}

# Solution #1 - Using lambda function
print('Min key =', min(d, key=lambda k: d[k]))
print('Max key =', max(d, key=lambda k: d[k]))

# Solution #2 - Using the dictionary get() method
print ('Min key =', min(d, key=d.get))
print ('Max key =', max(d, key=d.get))

Les deux approches donneront le même résultat :

Min key = d
Max key = c
Min key = d
Max key = c

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X