Programa de Python para encontrar los 3 valores más altos en un diccionario

Dictionary en Python es una colección desordenada de valores de datos, que se utiliza para almacenar valores de datos como un mapa, que a diferencia de otros tipos de datos que contienen solo un valor único como elemento, Dictionary contiene un par clave: valor.

Ejemplos: 

Input : my_dict = {'A': 67, 'B': 23, 'C': 45,
                   'D': 56, 'E': 12, 'F': 69} 

Output : {'F': 69, 'A': 67, 'D': 56}

Veamos diferentes métodos podemos encontrar los 3 valores más altos en un diccionario. 
  
Método n.º 1: Uso de colecciones.Contador()
Un Contador es una subclase de dictado para contar objetos que se pueden modificar. Es una colección desordenada donde los elementos se almacenan como claves de diccionario y sus recuentos se almacenan como valores de diccionario. Se permite que los recuentos sean cualquier valor entero, incluidos cero o recuentos negativos. La clase Counter es similar a bolsas o multisets en otros idiomas.
most_common([n]) devuelve una lista de los n elementos más comunes y sus recuentos desde el más común al menos. 

Python3

# Python program to demonstrate
# finding 3 highest values in a Dictionary
 
from collections import Counter
 
# Initial Dictionary
my_dict = {'A': 67, 'B': 23, 'C': 45,
           'D': 56, 'E': 12, 'F': 69}
 
k = Counter(my_dict)
 
# Finding 3 highest values
high = k.most_common(3)
 
print("Initial Dictionary:")
print(my_dict, "\n")
 
 
print("Dictionary with 3 highest values:")
print("Keys: Values")
 
for i in high:
    print(i[0]," :",i[1]," ")
Producción: 

Initial Dictionary:
{'C': 45, 'B': 23, 'D': 56, 'A': 67, 'E': 12, 'F': 69} 

Dictionary with 3 highest values:
Keys: Values
F  : 69  
A  : 67  
D  : 56

 

Método #2: Usar heapq.nlargest()

Python3

# Python program to demonstrate
# finding 3 highest values in a Dictionary
from heapq import nlargest
 
# Initial Dictionary
my_dict = {'A': 67, 'B': 23, 'C': 45,
           'D': 56, 'E': 12, 'F': 69}
 
print("Initial Dictionary:")
print(my_dict, "\n")
 
ThreeHighest = nlargest(3, my_dict, key = my_dict.get)
 
print("Dictionary with 3 highest values:")
print("Keys: Values")
 
for val in ThreeHighest:
    print(val, ":", my_dict.get(val))
Producción: 

Initial Dictionary:
{'D': 56, 'E': 12, 'F': 69, 'C': 45, 'B': 23, 'A': 67} 

Dictionary with 3 highest values:
Keys: Values
F : 69
A : 67
D : 56

 

Publicación traducida automáticamente

Artículo escrito por Vishal Chaudhary 2 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *