Python: eliminar K de los registros

A veces, mientras trabajamos con tuplas de Python, podemos tener un problema en el que necesitamos eliminar todos los K de las listas. Esta tarea puede tener aplicación en muchos dominios, como el desarrollo web y la programación diaria. Analicemos ciertas formas en que se puede realizar esta tarea.

Entrada :
test_list = [(5, 6, 7), (2, 5, 7)]
K = 7
Salida : [(5, 6), (2, 5)]

Entrada :
test_list = [(5, 6, 7), (2, 5, 7)]
K = 5
Salida : [(6, 7), (2, 7)]

Método #1: Uso de la comprensión de listas
Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos la tarea de obtener comprobaciones condicionales y recrear una nueva lista utilizando la comprensión de listas.

# Python3 code to demonstrate working of 
# Remove K from Records
# Using list comprehension
  
# initializing list
test_list = [(5, 6, 7), (2, 5), (1, ), (7, 8), (9, 7, 2, 1)]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K 
K = 7
  
# Remove K from Records
# Using list comprehension
res = [tuple(ele for ele in sub if ele != K) for sub in test_list]
  
# printing result 
print("The records after removing K : " + str(res)) 
Producción :

The original list is : [(5, 6, 7), (2, 5), (1, ), (7, 8), (9, 7, 2, 1)]
The records after removing K : [(5, 6), (2, 5), (1, ), (8, ), (9, 2, 1)]

Método #2: Usar filter()+ lambda
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, realizamos la tarea de eliminar todas las K usando filter() y la funcionalidad lambda.

# Python3 code to demonstrate working of 
# Remove K from Records
# Using filter() + lambda
  
# initializing list
test_list = [(5, 6, 7), (2, 5), (1, ), (7, 8), (9, 7, 2, 1)]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K 
K = 7
  
# Remove K from Records
# Using filter() + lambda
res = [tuple(filter(lambda ele: ele != 0, sub)) for sub in test_list]
  
# printing result 
print("The records after removing K : " + str(res)) 
Producción :

The original list is : [(5, 6, 7), (2, 5), (1, ), (7, 8), (9, 7, 2, 1)]
The records after removing K : [(5, 6), (2, 5), (1, ), (8, ), (9, 2, 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

Deja una respuesta

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