Lista de Python
Lista de Python
En este tutorial, aprenderemos todo sobre las listas de Python:crear listas, cambiar elementos de listas, eliminar elementos y otras operaciones de listas con la ayuda de ejemplos.
Video:Listas de Python y tuplas
Las listas de Python son uno de los tipos de datos más versátiles que nos permiten trabajar con varios elementos a la vez. Por ejemplo,
# a list of programming languages
['Python', 'C++', 'JavaScript']
Crear listas de Python
En Python, se crea una lista colocando elementos entre corchetes []
, separados por comas.
# list of integers
my_list = [1, 2, 3]
Una lista puede tener cualquier número de elementos y pueden ser de diferentes tipos (entero, flotante, cadena, etc.).
# empty list
my_list = []
# list with mixed data types
my_list = [1, "Hello", 3.4]
Una lista también puede tener otra lista como elemento. Esto se llama una lista anidada.
# nested list
my_list = ["mouse", [8, 4, 6], ['a']]
Elementos de la lista de acceso
Hay varias formas en las que podemos acceder a los elementos de una lista.
Índice de lista
Podemos usar el operador de índice []
para acceder a un elemento de una lista. En Python, los índices comienzan en 0. Entonces, una lista que tiene 5 elementos tendrá un índice de 0 a 4.
Intentar acceder a índices distintos a estos generará un IndexError
. El índice debe ser un número entero. No podemos usar float u otros tipos, esto resultará en TypeError
.
Se accede a las listas anidadas mediante la indexación anidada.
my_list = ['p', 'r', 'o', 'b', 'e']
# first item
print(my_list[0]) # p
# third item
print(my_list[2]) # o
# fifth item
print(my_list[4]) # e
# Nested List
n_list = ["Happy", [2, 0, 1, 5]]
# Nested indexing
print(n_list[0][1])
print(n_list[1][3])
# Error! Only integer can be used for indexing
print(my_list[4.0])
Salida
p o e a 5 Traceback (most recent call last): File "<string>", line 21, in <module> TypeError: list indices must be integers or slices, not float
Indización negativa
Python permite la indexación negativa de sus secuencias. El índice de -1 se refiere al último elemento, -2 al penúltimo elemento y así sucesivamente.
# Negative indexing in lists
my_list = ['p','r','o','b','e']
# last item
print(my_list[-1])
# fifth last item
print(my_list[-5])
Salida
e p

Rebanado de listas en Python
Podemos acceder a un rango de elementos en una lista usando el operador de corte :
.
# List slicing in Python
my_list = ['p','r','o','g','r','a','m','i','z']
# elements from index 2 to index 4
print(my_list[2:5])
# elements from index 5 to end
print(my_list[5:])
# elements beginning to end
print(my_list[:])
Salida
['o', 'g', 'r'] ['a', 'm', 'i', 'z'] ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z']
my_list[2: 5]
devuelve una lista con elementos en el índice 2, 3 y 4, pero no en el 5.
Agregar/Cambiar elementos de la lista
Las listas son mutables, lo que significa que sus elementos se pueden cambiar a diferencia de las cadenas o las tuplas.
Podemos usar el operador de asignación =
para cambiar un artículo o un rango de artículos.
# Correcting mistake values in a list
odd = [2, 4, 6, 8]
# change the 1st item
odd[0] = 1
print(odd)
# change 2nd to 4th items
odd[1:4] = [3, 5, 7]
print(odd)
Salida
[1, 4, 6, 8] [1, 3, 5, 7]
Podemos agregar un elemento a una lista usando el append()
o agregue varios elementos usando el extend()
método.
# Appending and Extending lists in Python
odd = [1, 3, 5]
odd.append(7)
print(odd)
odd.extend([9, 11, 13])
print(odd)
Salida
[1, 3, 5, 7] [1, 3, 5, 7, 9, 11, 13]
También podemos usar +
operador para combinar dos listas. Esto también se llama concatenación.
El *
operador repite una lista para el número dado de veces.
# Concatenating and repeating lists
odd = [1, 3, 5]
print(odd + [9, 7, 5])
print(["re"] * 3)
Salida
[1, 3, 5, 9, 7, 5] ['re', 're', 're']
Además, podemos insertar un elemento en la ubicación deseada utilizando el método insert()
o inserte varios elementos comprimiéndolos en una porción vacía de una lista.
# Demonstration of list insert() method
odd = [1, 9]
odd.insert(1,3)
print(odd)
odd[2:2] = [5, 7]
print(odd)
Salida
[1, 3, 9] [1, 3, 5, 7, 9]
Eliminar elementos de la lista
Podemos eliminar uno o más elementos de una lista usando la instrucción Python del. Incluso puede eliminar la lista por completo.
# Deleting list items
my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
# delete one item
del my_list[2]
print(my_list)
# delete multiple items
del my_list[1:5]
print(my_list)
# delete the entire list
del my_list
# Error: List not defined
print(my_list)
Salida
['p', 'r', 'b', 'l', 'e', 'm'] ['p', 'm'] Traceback (most recent call last): File "<string>", line 18, in <module> NameError: name 'my_list' is not defined
Podemos usar remove()
para eliminar el artículo dado o pop()
para eliminar un elemento en el índice dado.
El pop()
El método elimina y devuelve el último elemento si no se proporciona el índice. Esto nos ayuda a implementar listas como pilas (estructura de datos primero en entrar, último en salir).
Y, si tenemos que vaciar toda la lista, podemos usar el clear()
método.
my_list = ['p','r','o','b','l','e','m']
my_list.remove('p')
# Output: ['r', 'o', 'b', 'l', 'e', 'm']
print(my_list)
# Output: 'o'
print(my_list.pop(1))
# Output: ['r', 'b', 'l', 'e', 'm']
print(my_list)
# Output: 'm'
print(my_list.pop())
# Output: ['r', 'b', 'l', 'e']
print(my_list)
my_list.clear()
# Output: []
print(my_list)
Salida
['r', 'o', 'b', 'l', 'e', 'm'] o ['r', 'b', 'l', 'e', 'm'] m ['r', 'b', 'l', 'e'] []
Finalmente, también podemos eliminar elementos en una lista asignando una lista vacía a una porción de elementos.
>>> my_list = ['p','r','o','b','l','e','m']
>>> my_list[2:3] = []
>>> my_list
['p', 'r', 'b', 'l', 'e', 'm']
>>> my_list[2:5] = []
>>> my_list
['p', 'r', 'm']
Métodos de lista de Python
Python tiene muchos métodos de lista útiles que hacen que sea muy fácil trabajar con listas. Estos son algunos de los métodos de lista más utilizados.
Métodos | Descripciones |
---|---|
añadir() | añade un elemento al final de la lista |
extender() | añade todos los elementos de una lista a otra lista |
insertar() | inserta un elemento en el índice definido |
eliminar() | elimina un elemento de la lista |
pop() | devuelve y elimina un elemento en el índice dado |
borrar() | elimina todos los elementos de la lista |
índice() | devuelve el índice del primer elemento coincidente |
contar() | devuelve el recuento del número de elementos pasados como argumento |
ordenar() | ordenar elementos en una lista en orden ascendente |
reversa() | invertir el orden de los elementos en la lista |
copiar() | devuelve una copia superficial de la lista |
# Example on Python list methods
my_list = [3, 8, 1, 6, 8, 8, 4]
# Add 'a' to the end
my_list.append('a')
# Output: [3, 8, 1, 6, 0, 8, 4, 'a']
print(my_list)
# Index of first occurrence of 8
print(my_list.index(8)) # Output: 1
# Count of 8 in the list
print(my_list.count(8)) # Output: 3
Comprensión de listas:forma elegante de crear listas
La comprensión de listas es una forma elegante y concisa de crear una nueva lista a partir de una lista existente en Python.
Una lista por comprensión consta de una expresión seguida de una instrucción for entre corchetes.
Aquí hay un ejemplo para hacer una lista en la que cada elemento tiene una potencia creciente de 2.
pow2 = [2 ** x for x in range(10)]
print(pow2)
Salida
[1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
Este código es equivalente a:
pow2 = []
for x in range(10):
pow2.append(2 ** x)
Una lista por comprensión puede contener opcionalmente más for
o si las declaraciones. Un if
opcional puede filtrar elementos para la nueva lista. Estos son algunos ejemplos.
>>> pow2 = [2 ** x for x in range(10) if x > 5]
>>> pow2
[64, 128, 256, 512]
>>> odd = [x for x in range(20) if x % 2 == 1]
>>> odd
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
>>> [x+y for x in ['Python ','C '] for y in ['Language','Programming']]
['Python Language', 'Python Programming', 'C Language', 'C Programming']
Visite Comprensión de listas de Python para obtener más información.
Otras operaciones de lista en Python
Prueba de membresía de lista
Podemos probar si un elemento existe en una lista o no, usando la palabra clave in
.
my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm']
# Output: True
print('p' in my_list)
# Output: False
print('a' in my_list)
# Output: True
print('c' not in my_list)
Salida
True False True
Iterando a través de una lista
Usando un for
bucle podemos iterar a través de cada elemento de una lista.
for fruit in ['apple','banana','mango']:
print("I like",fruit)
Salida
I like apple I like banana I like mango
python
- Tipos de datos de Python
- Operadores de Python
- Declaración de paso de Python
- Argumentos de la función de Python
- Sueño de Python ()
- Comprensión de lista de Python, agregar, ordenar, longitud [EJEMPLOS]
- Promedio de Python:cómo encontrar el PROMEDIO de una lista en Python
- Python List count () con EJEMPLOS
- Python elimina duplicados de una lista
- Eliminar elemento de una LISTA de Python [clear, pop, remove, del]
- Índice de lista de Python () con ejemplo