Python | Eliminar todas las ocurrencias de un elemento dado de la lista

Aquí, vamos a implementar un programa de Python que eliminará todas las ocurrencias de un elemento dado de la lista .

Dada una lista, y tenemos que eliminar todas las apariciones de un elemento dado de la lista en Python.

Ejemplo:

    Input:
list = [10, 20, 10, 30, 10, 40, 10, 50]
n = 10
Output:
list after removing 10 from the list
list = [20, 30, 40, 50]

Lógica:

  • Ejecutar un bucle while de elemento 0 ª al índice del último elemento.
  • Compruebe el elemento si es igual al número (que se va a quitar) o no.
  • Si cualquier elemento de la lista es igual al número (que se va a quitar), eliminar ese elemento de la lista.
  • Para eliminar el número de la lista, el método de uso list.remove ().
  • Después de retirar el número / elemento de la lista, disminuir la longitud, ya que se elimina un elemento y, a continuación class el bucle para comprobar el siguiente elemento en el mismo índice (porque después de la eliminación del elemento – elementos próximos turnos para el índice anterior .
  • Si no se encuentra el elemento (es decir, no se elimina), a continuación, aumentar el contador de bucle para comprobar siguiente elemento

Ejemplo:.

# list with integer elements
list = [10, 20, 10, 30, 10, 40, 10, 50]
# number (n) to be removed
n = 10
# print original list
print ("Original list:")
print (list)
# loop to traverse each element in list
# and, remove elements
# which are equals to n
i=0 #loop counter
length = len(list) #list length
while(i<length):
if(list[i]==n):
list.remove (list[i])
# as an element is removed
# so decrease the length by 1
length = length -1
# run loop again to check element
# at same index, when item removed
# next item will shift to the left
continue
i = i+1
# print list after removing given element
print ("list after removing elements:")
print (list)

salida

    Original list:
[10, 20, 10, 30, 10, 40, 10, 50]
list after removing elements:
[20, 30, 40, 50]


Deja un comentario

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