Dado el diccionario de precio y frecuencia, calcule el costo total de los productos, es decir, sumando el producto del precio y la frecuencia de cada artículo.
Entrada : test_dict = {“Manzana”: 2, “Mango”: 2, “Uvas”: 2}, {“Manzana”: 2, “Mango”: 2, “Uvas”: 2}
Salida : 12
Explicación : (2 *2) + (2*2) + (2*2) = 12.Entrada : test_dict = {“Manzana”: 3, “Mango”: 2, “Uvas”: 3}, {“Manzana”: 2, “Mango”: 2, “Uvas”: 2}
Salida : 16
Explicación : La suma de producto conduce a 16 como arriba.
Método #1: Usar bucle
Esta es la forma bruta en la que se puede realizar esta tarea. En esto, iteramos a través de todas las claves y multiplicamos la frecuencia de cada elemento por su costo y seguimos realizando la suma intermedia.
Python3
# Python3 code to demonstrate working of # Cost computation using Frequency and Price dictionary # Using loop # initializing dictionary test_dict = {"Apple" : 5, "Mango" : 8, "Grapes" : 10} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing Frequency dict cost_dict = {"Apple" : 3, "Mango" : 4, "Grapes" : 6} res = 0 for key in test_dict: # computing summation of product res = res + (test_dict[key] * cost_dict[key]) # printing result print("The extracted summation : " + str(res))
The original dictionary is : {'Apple': 5, 'Mango': 8, 'Grapes': 10} The extracted summation : 107
Método #2: Usando sum() + comprensión de lista
La combinación de estas funcionalidades proporciona una forma abreviada de resolver este problema. En esto, realizamos la suma usando sum() y la comprensión de la lista se usa para compilar el resultado e iterar.
Python3
# Python3 code to demonstrate working of # Cost computation using Frequency and Price dictionary # Using sum() + list comprehension # initializing dictionary test_dict = {"Apple" : 5, "Mango" : 8, "Grapes" : 10} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing Frequency dict cost_dict = {"Apple" : 3, "Mango" : 4, "Grapes" : 6} # using list comprehension and sum() to provide one-liner res = sum([cost_dict[key] * test_dict[key] for key in test_dict]) # printing result print("The extracted summation : " + str(res))
The original dictionary is : {'Apple': 5, 'Mango': 8, 'Grapes': 10} The extracted summation : 107
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