web-dev-qa-db-fra.com

imprimer la valeur la plus élevée en dict avec la touche

Mon dict est comme,

{'A':4,'B':10,'C':0,'D':87}

Je veux trouver la valeur max avec sa clé et la valeur min avec sa clé.

La sortie sera comme,

max: 87, la clé est D

min: 0, la clé est C

Je sais comment obtenir les valeurs min et max de dict. Existe-t-il un moyen d'obtenir de la valeur et de saisir une seule instruction?

max([i for i in dic.values()]) 
min([i for i in dic.values()])
8
Nishant Nawarkhede

Vous pouvez utiliser use max and min with dict.get :

maximum = max(mydict, key=mydict.get)  # Just use 'min' instead of 'max' for minimum.
print(maximum, mydict[maximum])
# D 87
39
Alex Thornton

L'indice est de travailler avec les éléments du dict (c'est-à-dire tuples de paire clé-valeur). Ensuite, en utilisant le deuxième élément de l'élément comme clé max (par opposition à la clé dict), vous pouvez facilement extraire la valeur la plus élevée et sa clé associée.

 mydict = {'A':4,'B':10,'C':0,'D':87}
>>> max(mydict.items(), key=lambda k: k[1])
('D', 87)
>>> min(mydict.items(), key=lambda k: k[1])
('C', 0)
9
holdenweb

juste :

 mydict = {'A':4,'B':10,'C':0,'D':87}
 max(mydict.values())
 min(mydict.values())

values vous donnera la liste des valeurs du dictionnaire. La fonction max donne la valeur maximale. min fonction valeur minimale

et vous voulez obtenir la clé

1
Hackaholic