Python: eliminar la lista vacía de la lista

A veces, mientras trabajamos con python , podemos tener un problema en el que necesitamos filtrar ciertos datos vacíos. Estos pueden ser ninguno, string vacía, etc. Esto puede tener aplicaciones en muchos dominios. Discutamos ciertas formas en las que se puede realizar la eliminación de listas vacías. 

Método 1: usar la comprensión de listas: esta es una de las formas en que se puede resolver este problema. En esto, iteramos a través de la lista y no incluimos la lista que está vacía. 

Ejemplo

Python3

# Python3 code to Demonstrate Remove empty List
# from List using list comprehension
 
# Initializing list
test_list = [5, 6, [], 3, [], [], 9]
 
# printing original list
print("The original list is : " + str(test_list))
 
# Remove empty List from List
# using list comprehension
res = [ele for ele in test_list if ele != []]
 
# printing result
print("List after empty list removal : " + str(res))
Producción

The original list is : [5, 6, [], 3, [], [], 9]
List after empty list removal : [5, 6, 3, 9]

Método 2: Usar el método filter()

Esta es otra forma más en la que se puede realizar esta tarea. En esto, filtramos valores Ninguno. Los valores none también incluyen listas vacías y, por lo tanto, se eliminan.

Ejemplo

Python3

# Python3 Code to Demonstrate Remove empty List
# from List using filter() Method
 
# Initializing list by custom values
test_list = [5, 6, [], 3, [], [], 9]
 
# Printing original list
print("The original list is : " + str(test_list))
 
# Removing empty List from List
# using filter() method
res = list(filter(None, test_list))
 
# Printing the resultant list
print("List after empty list removal : " + str(res))
Producción

The original list is : [5, 6, [], 3, [], [], 9]
List after empty list removal : [5, 6, 3, 9]

Método 3: Uso de la definición de función 

Python3

# Python Code to Remove empty List from List
 
def empty_list_remove(input_list):
    new_list = []
    for ele in input_list:
        if ele:
            new_list.append(ele)
    return new_list
 
 
# input list values
input_list = [5, 6, [], 3, [], [], 9]
 
# print initial list values
print(f"The original list is : {input_list}")
# function-call & print values
print(f"List after empty list removal : {empty_list_remove(input_list)}")
Producción

The original list is : [5, 6, [], 3, [], [], 9]
List after empty list removal : [5, 6, 3, 9]

El método definido anteriormente (Método 3) es el mejor método optimizado entre los tres.

Método 4: usar los métodos len() y type(). Si la longitud es cero, la lista está vacía.

Python3

# Python3 code to Demonstrate Remove empty List
 
# Initializing list
test_list = [5, 6, [], 3, [], [], 9]
 
# printing original list
print("The original list is : " + str(test_list))
new_list=[]
# Remove empty List from List
for i in test_list:
    x=str(type(i))
    if(x.find('list')!=-1):
        if(len(i)!=0):
            new_list.append(i)
    else:
        new_list.append(i)
# printing result
print("List after empty list removal : " + str(new_list))
Producción

The original list is : [5, 6, [], 3, [], [], 9]
List after empty list removal : [5, 6, 3, 9]

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 *