Python – Concatenar Tuplas Máximas

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

Deja una respuesta

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