logo

Python: eliminar el primer elemento de la lista

La estructura de datos de la cola es una estructura de datos muy conocida; las listas en Python generalmente agregan los elementos al final de la lista de Python. Para implementar una estructura de datos de cola, es esencial poder eliminar el elemento frontal de una lista. Analicemos las formas de eliminar el primer elemento de la lista.

Método 1: eliminar elementos de listas en Python usando pop()

Este método pop(), es decir, elimina e imprime el ithelemento de la lista. Este método se utiliza principalmente entre las otras opciones disponibles para realizar esta tarea. Esto cambia la lista original.



Python3








# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using pop(0) to perform removal> test_list.pop(>0>)> # Printing modified list> print>(>'Modified list is : '> +> str>(test_list))>

>

>

Producción :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Método 2: eliminar elementos de listas en Python usando del list[]

Este es solo el método alternativo para realizar la eliminación frontal, este operador del también realiza la eliminación de elementos de la lista en su lugar y disminuye el tamaño de la lista en 1.

Python3




# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using del list[0] to perform removal> del> test_list[>0>]> # Printing modified list> print>(>'Modified list is : '> +> str>(test_list))>

>

>

Producción :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Método 3: eliminar elementos de listas en Python usando Slicing

Rebanado de pitón es otro enfoque mediante el cual se puede resolver este problema: podemos dividir la lista desde el segundo elemento hasta el último y asignarla a la lista vacía. Esto no realiza la conversión in situ como en el caso de los dos métodos anteriores.

Python3




# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using slicing to perform removal> res>=> test_list[>1>:]> # Printing modified list> print>(>'Modified list is : '> +> str>(res))>

>

>

Producción :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Método 4: eliminar elementos de listas en Python usando deque() + popizquierda()

Este es un método menos conocido para lograr esta tarea en particular: convertir la lista en deque y luego realizar el pop hacia la izquierda para eliminar el elemento del frente de la lista.

Python3




from> collections>import> deque> # initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # using deque() + popleft() to> # perform removal> res>=> deque(test_list)> res.popleft()> # Printing modified list> print>(>'Modified list is : '> +> str>(>list>(res)))>

>

>

Producción :

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Método 5: Eliminar elementos de listas en Python usando remove()

El eliminar() La función le permite eliminar la primera instancia de un valor específico de la lista. Esto se puede utilizar para eliminar el elemento principal de la lista. Elija el primer miembro de la lista y aliméntelo a la función remove().

Python3




test_list>=> [>1>,>4>,>3>,>6>,>7>,>10>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # Remove first element from list in python> test_list.remove(test_list[>0>])> # Printing modified list> print>(>'Modified list is : '> +> str>(test_list))>

>

>

Producción :

doble a cadena java
Original list is : [1, 4, 3, 6, 7, 10] Modified list is : [4, 3, 6, 7, 10]>

Método: 6 usando la comprensión de listas

algoritmo paso a paso para implementar el enfoque

  1. Una lista lista_prueba
  2. Inicializar una lista vacía new_list
  3. Itere sobre los elementos en test_list comenzando desde el segundo elemento:
    a. Agregar el elemento actual a new_list
  4. Devolver nueva_lista

Python3




# initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # remove first element using list comprehension> new_list>=> [x>for> x>in> test_list[>1>:]]> # print the new list> print>(>'Modified list is : '> +> str>(new_list))>

>

>

Producción

Modified list is : [4, 3, 6, 7]>

Complejidad del tiempo:

La complejidad temporal de este enfoque es O(n), donde n es el número de elementos en la lista de entrada test_list.
Esto se debe a que el algoritmo itera sobre cada elemento de la lista una vez, excepto el primer elemento, que se omite.
Espacio auxiliar:

La complejidad del espacio auxiliar de este enfoque es O(n), donde n es el número de elementos en la lista de entrada test_list.
Esto se debe a que el algoritmo crea una nueva lista new_list para almacenar la versión modificada de la lista de entrada, que potencialmente podría tener la misma cantidad de elementos que test_list.

Usando numpy.delete():

  1. Importar la biblioteca numpy
  2. Cree una matriz numpy de la lista para modificar
  3. Utilice la función numpy.delete() para eliminar el primer elemento de la matriz
  4. Convierta la matriz numpy modificada nuevamente en una lista
  5. Imprimir las listas originales y modificadas.

Python3




import> numpy as np> # initializing list> test_list>=> [>1>,>4>,>3>,>6>,>7>]> # Printing original list> print>(>'Original list is : '> +> str>(test_list))> # Convert list to numpy array> np_array>=> np.array(test_list)> # Use numpy.delete() to remove first element> modified_np_array>=> np.delete(np_array,>0>)> # Convert numpy array back to list> modified_list>=> modified_np_array.tolist()> # Printing modified list> print>(>'Modified list is : '> +> str>(modified_list))>

>

>

Producción:

Original list is : [1, 4, 3, 6, 7] Modified list is : [4, 3, 6, 7]>

Complejidad del tiempo:
La complejidad temporal de la función numpy.delete() es O(n), donde n es el número de elementos en la matriz numpy. Dado que también convertimos la lista en una matriz numpy y volvemos a una lista, la complejidad temporal general de este enfoque es O (n).

Complejidad espacial:
La complejidad espacial de este enfoque es O(n), donde n es el número de elementos en la lista de entrada test_list. Esto se debe a la creación de la matriz numpy.