Listas en Python: cómo crearlas y usarlas

Última actualización
18 Jun 2023
Tiempo de lectura
8 min
Listas en Python

Conoce qué son listas en Python y cuáles son sus funciones principales.

El lenguaje de programación Python cuenta con varios tipos de datos nativos utilizados para agrupar valores. El más versátil es la lista, que sirve para almacenar información compleja de forma organizada. Las listas en Python ayudan a estructurar y ordenar el contenido para su uso posterior. A diferencia de tuple, set y diccionario, una lista puede almacenar datos de varios tipos, anidar diferentes valores y listas. Una lista es una estructura de datos muy flexible. La puedes editar, ordenar, ampliar o acortar a través de varios métodos. Veamos con más detalle cómo funciona la clase list.

¿Qué es una lista en Python?

Qué es una lista en Python

Fuente: Unsplash

Una lista es una secuencia de valores. Es un tipo de contenedor usado para almacenar un número indefinido de datos arbitrarios del mismo tipo o de tipos distintos.

Una lista homogénea contiene elementos del mismo tipo, por ejemplo, strings.

lista1 = ['uno', 'dos', 'tres']

Una lista heterogénea combina diferentes tipos de archivos. En el siguiente ejemplo tenemos un string, un número entero, un flotante y hasta otra lista.

lista2 = ['uno', 2, 3.14, [10, 20, 30]]
<pre>

Las listas en Python tienen las siguientes propiedades:

  • Son ordenadas: cada elemento dentro de la lista está indexado y mantiene el orden definido.
  • Permiten elementos duplicados: las listas pueden tener elementos con el mismo valor.
  • Las listas pueden anidar, es decir, contener una lista dentro de la otra.
  • Son mutables: podemos editar, eliminar o agregar elementos en una lista existente.

¿Cómo se crea una lista en Python?

Cómo se crea una lista en Python

Fuente: Freepik

Para crear una lista en Python, usa corchetes [] que encierran elementos separados por comas:

nueva_lista1 = [1, 2, 3, 4]
print (nueva_lista1)
[1, 2, 3, 4]

Otra manera de crear una lista es mediante el constructor de la clase list(iterable), el cual convierte un contenedor iterable en una lista:

iterable = ('Python')
nueva_lista2 = list (iterable)
print (nueva_lista2)
['P', 'y', 't', 'h', 'o', 'n']

Una lista que no contiene elementos se llama una lista vacía, y se usa para agregar datos posteriormente. La puedes crear usando tanto corchetes vacíos como el constructor list():

lista_vacía1 = []
print (lista_vacía1)
[]
lista_vacía2 = list()
print (lista_vacía2)
[]

¿Cómo acceder a elementos de una lista?

Para acceder a un elemento de una lista, se aplican los índices; estos son números enteros que indican la posición de un elemento en una lista. Para seleccionar un elemento, especifica su índice entre corchetes. El indexado va desde 0 a n-1, siendo n el tamaño de la lista. Por ejemplo, en una lista con 3 elementos, los índices respectivos de cada uno de los ítems serían 0, 1 y 2.

lista = ['uno', 2, 3.14]
print(lista [0])
uno
print(lista [1])
2
print(lista [2])
3.14

Python también te permite usar índices negativos para acceder a los elementos de una secuencia. En este caso, el índice [-1] se refiere al último elemento de la lista, el [-2] al penúltimo, etc.

lista = ['uno', 2, 3.14]
print(lista [-1])
3.14
print(lista [-2])
2
print(lista [-3])
uno

Como hemos mencionado, las listas pueden contener otras secuencias. Para acceder a sus elementos, usa corchetes dobles “[][]”. En el primer corchete especifica el índice de la lista anidada, y en el segundo, el elemento necesario.

lista = ['uno', 2, 3.14, [10, 20, 30]]
print(lista [3])
[10, 20, 30]
print(lista [3][0])
10

Además, puedes rebanar una lista por el rango de elementos o crear sublistas más pequeñas de una lista usando el operador [:], indicando a la izquierda el valor de inicio, y a la derecha el valor final que no está incluido. Así [0:2] crearás una lista con los elementos [0] y [1] de la lista original.

lista = ['uno', 2, 3.14, [10, 20, 30]]
print(lista [0:2])
['uno', 2]
#[:] Selecciona todos los elementos
print(lista [:])
['uno', 2, 3.14, [10, 20, 30]]
#[2:] Selecciona los elementos desde el índice definido hasta el final
print(lista [2:])
[3.14, [10, 20, 30]]
#[:3] Selecciona los elementos hasta el índice definido, sin incluirlo
print(lista [:3])
['uno', 2, 3.14]

¿Cómo modificar elementos de una lista?

Ya que las listas en Python son mutables, puedes modificar sus elementos con el operador de asignación “=”. Para esto, selecciona elementos a modificar mediante sus índices o un rango e indica el valor nuevo.

lista = ['uno', 2, 3.14, [10, 20, 30]]
lista[3] = 4
print(lista)
['uno', 2, 3.14, 4]
lista = ['uno', 2, 3.14, [10, 20, 30]]
lista[1:] = ['dos', 'tres', 'cuatro']
print(lista)
['uno', 'dos', 'tres', 'cuatro']

¿Cómo agregar elementos a una lista en Python?

Fuente: Freepik

Las listas en Python son dinámicas, lo que te permite agregar y eliminar elementos. Hay varias formas de agregar nuevos datos a listas existentes.

Para agregar un nuevo elemento a una lista, aplica el método append(). Agrega el nuevo elemento al final de la lista sin afectar ninguno de los elementos anteriores. Este método es preferible cuando quieres ir agregando elementos en una lista vacía según sea necesario.

compras = ['leche', 'pan', 'tomate']
compras.append('pollo')
print(compras)
['leche', 'pan', 'tomate', 'pollo']

También es posible agregar un elemento en una posición concreta con el método insert(índice, elemento) donde se especifica la posición del elemento y el valor nuevo. Los elementos con el índice mayor al índice indicado se desplazan hacia la derecha:

compras = ['leche', 'pan', 'tomate']
compras.insert(1, 'queso')
print(compras)
['leche', 'queso', 'pan', 'tomate']

Para agregar un grupo de elementos, usa el método extend():

compras = ['leche', 'pan', 'tomate']
compras.extend(['sal', 'azúcar', ' huevos'])
print(compras)
['leche', 'pan', 'tomate', 'sal', 'azúcar', ' huevos']

El mismo resultado obtendrás concatenando dos listas con el operador “+”:

compras1 = ['leche', 'pan', 'tomate']
compras2 = ['sal', 'azúcar', 'huevos']
compras = compras1 + compras2
print(compras)
['leche', 'pan', 'tomate', 'sal', 'azúcar', 'huevos']

¿Cómo eliminar elementos de una lista en Python?

En Python hay cuatro formas principales para borrar elementos de una lista:

  • Por su índice mediante la función del():
compras = ['leche', 'pan', 'tomate']
del(compras[2])
print(compras)
['leche', 'pan']
  • Por su valor mediante el método remove():
compras = ['leche', 'pan', 'tomate']
compras.remove('pan')
print(compras)
['leche', 'tomate']
  • Mediante el método pop(), que además de borrar, te recupera el elemento realizando una extracción:
compras = ['leche', 'pan', 'tomate']
print(compras.pop(0))
leche
print(compras)
['pan', 'tomate']
  • Por su rango mediante el rebanado de listas:
compras = ['leche', 'pan', 'tomate']
compras[:2] = []
print(compras)
['tomate']

¿Cómo saber si un elemento está en una lista en Python?

Fuente: Unsplash

Para comprobar que un ítem específico está en la lista, aplica el operador de pertenencia “in”. Si un elemento está almacenado en la lista, se devuelve la expresión booleana True; de lo contrario, se devolverá False.

compras = ['leche', 'pan', 'tomate']
print('leche' in compras)
True
print('huevos' in compras)
False

Métodos de lista

Como hemos visto, Python permite manipular listas de muchas maneras. Resumimos con una lista completa de métodos de la clase list.

Método Descripción
list.append(x) Agrega un nuevo elemento al final de la lista.
list1.extend(list2) Agrega un grupo de elementos (iterables) al final de la lista o concatena listas.
list.insert(índice, elemento) Inserta un elemento en una posición concreta de la lista.
list.remove(elemento) Elimina la primera ocurrencia de un elemento en la lista.
list.pop(índice) Extrae y elimina un elemento de la lista en la posición indicada.
list.clear() Borra todos los elementos de la lista.
list.index(elemento) Devuelve el índice de la primera ocurrencia de un elemento en la lista.
list.count(elemento) Cuenta el número de ocurrencias de un elemento en la lista.
list.sort() Ordena elementos en la lista.
list.reverse() Pone elementos de la lista en orden inverso.
list.copy() Devuelve una copia de la lista.

 

Si quieres empezar tu carrera en programación y dominar el lenguaje Python, en EBAC te invitamos al curso online Python para análisis de datos. En solo 2 meses empezarás a programar desde cero, aprenderás a manejar listas y estructuras de datos, visualizar y publicar tu análisis de datos. Harás actividades prácticas a tu ritmo y en cualquier lugar, con el feedback del tutor, y aplicarás nuevos conocimientos en un proyecto profesional que te ayudará a enriquecer tu portafolio. Al finalizar el curso, recibirás el certificado de EBAC y acceso a la plataforma de por vida.

Página de inicio / Programación & Data

Python para análisis de datos

Aprende uno de los lenguajes de programación más versátiles y accesibles en la analítica, maneja grandes cantidades de datos de forma automatizada. Agiliza tu trabajo con esta poderosa herramienta, integra tus sistemas, procesa datos más rápido y en diferentes formatos.

2 meses
12x de
$ 527,50 MXN
a meses sin intereses con tarjeta de crédito
Precio total
$ 6.330 MXN
$ 10.550 MXN
Inscríbete al curso
Comparte tu opinión
Recibir notificaciones de otros comentarios

O como invitado

Suscribiete Suscribiete Suscribiete Suscribiete Suscribiete

Más artículos relacionados

22 Oct 2023
8 min
Bill Gates: La mente maestra detrás de Microsoft

Descubre cómo la increíble visión de Bill Gates transformó la tecnología para siempre.

22 Oct 2023
8 min
21 Sep 2023
8 min
¿Qué es DevOps?

Conoce el concepto de DevOps, cómo funciona y qué beneficios trae la cooperación de diferentes equipos IT.

21 Sep 2023
8 min
21 Sep 2023
7 min
Ada Lovelace: La vida y descubrimientos de la hija de lord Byron

Descubre cómo la hija de lord Byron marcó un hito en la historia de la programación.

21 Sep 2023
7 min
21 Sep 2023
7 min
¿Qué es el internet de las cosas?

Aprende cómo funciona la tecnología IoT, dónde se usa, cuáles son sus beneficios y posibles riesgos.

21 Sep 2023
7 min
21 Sep 2023
5 min
¿Qué es un objeto en programación?

Conoce el concepto del objeto en programación y aprende a crear uno para tu programa.

21 Sep 2023
5 min
21 Sep 2023
6 min
Frameworks: Marcos de trabajo para programadores

Descubre cómo puedes facilitar el desarrollo de una aplicación usando frameworks.

21 Sep 2023
6 min