Dado un diccionario, cuente las instancias donde las claves son iguales a los valores.
Entrada : test_dict = {5:5, 8:9, 7:8, 1:2, 10:10, 4:8}
Salida : 2
Explicación : en 2 instancias, las claves son iguales a los valores.Entrada : test_dict = {5:4, 8:9, 7:8, 1:2, 10:10, 4:8}
Salida : 1
Explicación : en 1 instancia, la clave es igual al valor.
Método #1: Usar bucle
En esto, contamos las instancias en las que las claves son iguales a los valores e incrementamos el contador en consecuencia.
Python3
# Python3 code to demonstrate working of # Keys Values equal frequency # Using loop # initializing dictionary test_dict = {5: 5, 8: 9, 7: 7, 1: 2, 10: 10, 4: 8} # printing original dictionary print("The original dictionary is : " + str(test_dict)) res = 0 for key in test_dict: # checking for equality and incrementing counter if key == test_dict[key]: res += 1 # printing result print("The required frequency : " + str(res))
The original dictionary is : {5: 5, 8: 9, 7: 7, 1: 2, 10: 10, 4: 8} The required frequency : 3
Método #2: Usando sum() + comprensión de lista
En esto, la tarea de contar se realiza usando sum(), cuando se encuentran valores-clave iguales, 1 se agrega a la lista y luego, al final, se suma cada valor.
Python3
# Python3 code to demonstrate working of # Keys Values equal frequency # Using sum() + list comprehension # initializing dictionary test_dict = {5: 5, 8: 9, 7: 7, 1: 2, 10: 10, 4: 8} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # computing summation to get frequency res = sum([1 for key in test_dict if key == test_dict[key]]) # printing result print("The required frequency : " + str(res))
The original dictionary is : {5: 5, 8: 9, 7: 7, 1: 2, 10: 10, 4: 8} The required frequency : 3
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA