Dada la lista de tuplas, elimine todas las tuplas con longitud K.
Entrada : test_list = [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)], K = 2
Salida : [(4, ) , (8, 6, 7), (1, ), (3, 4, 6, 7)]
Explicación : (4, 5) de len = 2 se elimina.Entrada : test_list = [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)], K = 3
Salida : [(4, 5 ), (4, ), (1, ), (3, 4, 6, 7)]
Explicación : se elimina la tupla de 3 longitudes.
Método #1: Usar la comprensión de listas
Esta es una de las formas en que se puede realizar esta tarea. En esto, iteramos para todos los elementos en bucle y realizamos la tarea requerida de eliminación de elementos de longitud K usando condiciones.
Python3
# Python3 code to demonstrate working of # Remove Tuples of Length K # Using list comprehension # initializing list test_list = [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)] # printing original list print("The original list : " + str(test_list)) # initializing K K = 1 # 1 liner to perform task # filter just lengths other than K # len() used to compute length res = [ele for ele in test_list if len(ele) != K] # printing result print("Filtered list : " + str(res))
The original list : [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)] Filtered list : [(4, 5), (8, 6, 7), (3, 4, 6, 7)]
Método #2: Usar filter() + lambda + len()
Otra forma más de resolver este problema. En esto, realizamos el filtrado usando filter() y la función lambda para extraer solo elementos de longitud no K usando len().
Python3
# Python3 code to demonstrate working of # Remove Tuples of Length K # Using filter() + lambda + len() # initializing list test_list = [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)] # printing original list print("The original list : " + str(test_list)) # initializing K K = 1 # filter() filters non K length values and returns result res = list(filter(lambda x : len(x) != K, test_list)) # printing result print("Filtered list : " + str(res))
The original list : [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)] Filtered list : [(4, 5), (8, 6, 7), (3, 4, 6, 7)]
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