Python list pop() es una función incorporada en Python que elimina y devuelve el último valor de la Lista o el valor de índice dado.
Sintaxis:
nombre_lista.pop(índice)
Parámetro:
- índice ( opcional ): el valor en el índice aparece y se elimina. Si no se proporciona el índice, el último elemento aparece y se elimina.
Devuelve: El último valor o el valor de índice dado de la lista.
Excepción: cuando el índice está fuera de rango, devuelve IndexError.
Ejemplo 1: Uso del método pop()
Python3
# Python3 program for pop() method list1 = [ 1, 2, 3, 4, 5, 6 ] # Pops and removes the last element from the list print(list1.pop()) # Print list after removing last element print("New List after pop : ", list1, "\n") list2 = [1, 2, 3, ('cat', 'bat'), 4] # Pop last three element print(list2.pop()) print(list2.pop()) print(list2.pop()) # Print list print("New List after pop : ", list2, "\n")
Producción:
6 New List after pop : [1, 2, 3, 4, 5] 4 ('cat', 'bat') 3 New List after pop : [1, 2]
Ejemplo 2
Python3
# Python3 program showing pop() method # and remaining list after each pop list1 = [ 1, 2, 3, 4, 5, 6 ] # Pops and removes the last # element from the list print(list1.pop(), list1) # Pops and removes the 0th index # element from the list print(list1.pop(0), list1)
Producción:
6 [1, 2, 3, 4, 5] 1 [2, 3, 4, 5]
Ejemplo 3: DemostrandoIndexError
Python3
# Python3 program for error in pop() method list1 = [ 1, 2, 3, 4, 5, 6 ] print(list1.pop(8))
Producción:
Traceback (most recent call last): File "/home/1875538d94d5aecde6edea47b57a2212.py", line 5, in print(list1.pop(8)) IndexError: pop index out of range
Ejemplo 4: Ejemplo práctico
Una lista de la fruta contiene fruit_name y propiedad que dice su fruta. Otra lista de consumo tiene dos elementos : jugo y comer . Con la ayuda de pop() y append() podemos hacer algo interesante.
Python3
# Python3 program demonstrating # practical use of list pop() fruit = [['Orange','Fruit'],['Banana','Fruit'], ['Mango', 'Fruit']] consume = ['Juice', 'Eat'] possible = [] # Iterating item in list fruit for item in fruit : # Iterating use in list consume for use in consume : item.append(use) possible.append(item[:]) item.pop(-1) print(possible)
Producción:
[['Orange', 'Fruit', 'Juice'], ['Orange', 'Fruit', 'Eat'], ['Banana', 'Fruit', 'Juice'], ['Banana', 'Fruit', 'Eat'], ['Mango', 'Fruit', 'Juice'], ['Mango', 'Fruit', 'Eat']]
Complejidad del tiempo:
La complejidad de todos los ejemplos anteriores es constante O (1) tanto en el caso promedio como en el amortizado