Dado un diccionario con valores como una lista, la tarea es escribir un programa de Python que pueda encontrar el máximo de cualquier clave y generar una columna de índice similar de los valores de otras claves.
Acercarse :
- Obtenga el máximo de la clave dada.
- Obtiene el índice del elemento máximo encontrado.
- Compruebe si el índice de max está presente en la clave de búsqueda; si no, devuelva el resultado no posible.
- Obtenga el elemento en la clave de búsqueda ( opt_key), que se encuentra en el índice que se encuentra en el Paso 2.
Entrada: test_dict = {“gfg”: [4, 1, 6], “es”: [1, 4, 8], “mejor”: [9, 10, 1]}, max_search = “mejor”, opt_key = «gfg»
Salida : 1
Explicación: 10 es el elemento máximo en la mejor clave, que corresponde al primer índice. En gfg, el primer índice es 1, por lo tanto, 1.
Entrada: test_dict = {“gfg”: [4, 10, 6], “es”: [1, 4, 8], “mejor”: [9, 10, 1]}, max_search = “mejor”, opt_key = «gfg»
Salida : 10
Explicación: 10 es el elemento máximo en la mejor clave, que corresponde al primer índice. En gfg, el primer índice es 10, por lo tanto, 10.
Método 1: Usar index() , max( ) y lambda
En esto, encontramos el máximo de la clave de búsqueda máxima usando max() y obtenemos su índice usando index(), y luego obtenemos el valor del índice en la clave de salida.
Ejemplo:
Python3
# initializing dictionary test_dict = {"gfg": [4], "is": [1, 4, 8], "best": [9, 10]} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing max_search key max_search = "best" # initializing output key opt_key = "gfg" # handling case in which maximum index is not # present in output key if len(test_dict[opt_key]) <= test_dict[max_search].index( max(test_dict[max_search])): res = "Result not possible" # using max() to get of search key else: res = max(test_dict[opt_key], key=lambda sub: test_dict[max_search] [test_dict[opt_key].index(sub)]) # printing result print("The required output : " + str(res))
Producción:
El diccionario original es: {‘gfg’: [4], ‘is’: [1, 4, 8], ‘best’: [9, 10]}
La salida requerida: Resultado no posible
En esto, las listas de las claves de búsqueda y de salida se combinan usando zip(), publica que se encuentra un máximo de una lista y se devuelve el índice correspondiente de la clave de salida.
Ejemplo:
Python3
# initializing dictionary test_dict = {"gfg": [4, 1, 6], "is": [1, 4, 8], "best": [9, 10, 1]} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing max_search key max_search = "best" # initializing output key opt_key = "gfg" # handling case in which maximum index is not present # in output key if len(test_dict[opt_key]) <= test_dict[max_search].index( max(test_dict[max_search])): res = "Result not possible" # using max() to get of search key # zip() used for combining lists else: res = max(zip(test_dict[opt_key], test_dict[max_search]), key=lambda sub: sub[1])[0] # printing result print("The required output : " + str(res))
Producción:
El diccionario original es: {‘gfg’: [4, 1, 6], ‘is’: [1, 4, 8], ‘best’: [9, 10, 1]}
La salida requerida: 1
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