Dada una lista de tuplas con una string y su magnitud, la tarea es escribir un programa en Python para unir todas las strings con magnitudes máximas.
Ejemplos:
Entrada: test_list = [(“Gfg es mejor”, 8), (“gfg es bueno”, 7), (“para”, 2), (“para todos los geeks”, 8)]
Salida: «Gfg es lo mejor para todos los geeks»
Explicación: 8 es el elemento de tupla máximo y la concatenación de claves produce el resultado.
Entrada: test_list = [(“Gfg es mejor”, 7), (“gfg es bueno”, 8), (“para”, 2), (“para todos los geeks”, 8)]
Salida: «gfg es bueno para todos los geeks»
Explicación: 8 es el elemento de tupla máximo y la concatenación de claves produce el resultado.
Método n.º 1: Usar max() + itemgetter() + comprensión de lista + join()
En esto, realizamos la tarea de obtener números de magnitud máxima usando max(), itemgetter maneja el índice para consultar. Las strings se unen mediante join() después de hacer coincidir mediante la comprensión de listas.
Python3
# Python3 code to demonstrate working of # Concatenate Maximum Tuples # Using max() + itemgetter() + list comprehension + join() from operator import itemgetter # initializing list test_list = [("Gfg is best", 8), ("gfg is good", 7), ("for", 2), ("for all geeks", 8)] # printing original list print("The original list is : " + str(test_list)) # getting maximum max_ele = max(test_list, key=itemgetter(1))[1] # joining maximum res = ' '.join([key for key, ele in test_list if ele == max_ele]) # printing result print("The maximum concatenated strings : " + str(res))
Producción:
La lista original es: [(‘Gfg is best’, 8), (‘gfg is good’, 7), (‘for’, 2), (‘for all geeks’, 8)]
Las strings concatenadas máximas: Gfg es mejor para todos los geeks
Método #2: Usar filter() + max() + itemgetter()
En esto, realizamos la tarea de filtrar usando filter() en lugar de la comprensión de listas. Descansar todas las funcionalidades es similar a todo el método.
Python3
# Python3 code to demonstrate working of # Concatenate Maximum Tuples # Using filter() + max() + itemgetter() from operator import itemgetter # initializing list test_list = [("Gfg is best", 8), ("gfg is good", 7), ("for", 2), ("for all geeks", 8)] # printing original list print("The original list is : " + str(test_list)) # getting maximum max_ele = max(test_list, key=itemgetter(1))[1] # joining maximum # filter checks for maximum values and concats res = " ".join([ele[0] for ele in filter(lambda ele: ele[1] == max_ele, test_list)]) # printing result print("The maximum concatenated strings : " + str(res))
Producción:
La lista original es: [(‘Gfg is best’, 8), (‘gfg is good’, 7), (‘for’, 2), (‘for all geeks’, 8)]
Las strings concatenadas máximas: Gfg es mejor para todos los geeks
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