Listas

Arrays

Las listas son una estructura de datos importante en Python que permite almacenar una secuencia ordenada de elementos. Las listas son mutables, lo que significa que se pueden agregar, eliminar o modificar elementos despuΓ©s de su creaciΓ³n.

AquΓ­ hay un ejemplo de cΓ³mo crear una lista en Python:

# Crear una lista
mi_lista = [1, 2, 3, 4, 5]
print(mi_lista)  # [1, 2, 3, 4, 5]

Algunas propiedades de las listas:

  • Son ordenadas, mantienen el orden en el que han sido definidas

  • Pueden ser formadas por tipos arbitrarios

  • Pueden ser indexadas con [i].

  • Se pueden anidar, es decir, meter una dentro de la otra.

  • Son mutables, ya que sus elementos pueden ser modificados.

  • Son dinΓ‘micas, ya que se pueden aΓ±adir o eliminar elementos.

Las listas en Python pueden contener elementos de cualquier tipo, incluidos nΓΊmeros, cadenas, funciones, otros objetos, etc. Incluso es posible tener una lista de listas.

# Crear una lista de diferentes tipos de elementos
mi_lista = [1, "Hola", 3.14, True, [1, 2, 3]]
print(mi_lista)  # [1, "Hola", 3.14, True, [1, 2, 3]]

Iterar listas

Las listas son objetos iterables, lo que significa que se pueden recorrer para acceder a cada uno de sus elementos. AquΓ­ hay un ejemplo de cΓ³mo recorrer una lista:

# Recorrer una lista
mi_lista = [1, 2, 3, 4, 5]
for elemento in mi_lista:
    print(elemento)
# 1
# 2
# 3
# 4
# 5

Si necesitamos un Γ­ndice acompaΓ±ado con la lista, que tome valores desde 0 hasta n-1, se puede hacer de la siguiente manera.

lista = [5, 9, 10]
for index, l in enumerate(lista):
    print(index, l)
#0 5
#1 9
#2 10

O si tenemos dos listas y las queremos iterar a la vez, tambiΓ©n es posible hacerlo.

lista1 = [5, 9, 10]
lista2 = ["Jazz", "Rock", "Djent"]
for l1, l2 in zip(lista1, lista2):
    print(l1, l2)
#5 Jazz
#9 Rock
#10 Djent

Y por supuesto, tambiΓ©n se pueden iterar las listas usando los Γ­ndices como hemos visto al principio, y haciendo uso de len(), que nos devuelve la longitud de la lista.

lista1 = [5, 9, 10]
for i in range(0, len(lista)):
    print(lista1[i])
#5
#9
#10

Acceder y modificar valores

TambiΓ©n se pueden acceder a los elementos de una lista por su Γ­ndice, que es un nΓΊmero que indica su posiciΓ³n en la lista. Los Γ­ndices en Python comienzan en 0. Esto es util para cambiar unicamente un solo elemento de la lista.

# Acceder a un elemento por su Γ­ndice
mi_lista = [1, 2, 3, 4, 5]
print(mi_lista[0])  # 1
mi_lista[2] = 4

En el caso de que quieras acceder al ultimo elementos puede utilizar el indice -1. De la misma manera, al igual que [-1] es el ΓΊltimo elemento, podemos acceder a [-2] que serΓ‘ el penΓΊltimo.

a = [90, "Python", 3.87]
print(a[-1]) #3.87

La asignacion de valores tambien se puede hacer mediante iteracion

Sublistas

tambiΓ©n es posible crear sublistas mΓ‘s pequeΓ±as de una mΓ‘s grande. Para ello debemos de usar : entre corchetes, indicando a la izquierda el valor de inicio, y a la izquierda el valor final que no estΓ‘ incluido. Por lo tanto [0:2] crearΓ‘ una lista con los elementos [0] y [1] de la original.

l = [1, 2, 3, 4, 5, 6]
print(l[0:2]) #[1, 2]
print(l[2:6]) #[3, 4, 5, 6]

Y de la misma manera podemos modificar mΓΊltiples valores de la lista a la vez usando :.

l = [1, 2, 3, 4, 5, 6]
l[0:3] = [0, 0, 0]
print(l) #[0, 0, 0, 4, 5, 6

Metodos

Hay muchos mΓ©todos disponibles en Python para trabajar con listas, aquΓ­ hay algunos de los mΓ‘s comunes:

append(element)

Agrega un elemento al final de la lista.

mi_lista = [1, 2, 3, 4, 5]
mi_lista.append(6)
print(mi_lista)  # [1, 2, 3, 4, 5, 6]

extend(list)

Agrega los elementos de una lista a otra.

mi_lista = [1, 2, 3, 4, 5]
otra_lista = [6, 7, 8]
mi_lista.extend(otra_lista)
print(mi_lista)  # [1, 2, 3, 4, 5, 6, 7, 8]

Esto tambien se puede hacer mediante el operador +

l = [1, 2, 3]
l += [4, 5]
print(l) #[1, 2, 3, 4, 5]

insert(index, element)

Agrega un elemento en una posiciΓ³n especΓ­fica de la lista.

scssCopy codemi_lista = [1, 2, 3, 4, 5]
mi_lista.insert(2, 6)
print(mi_lista)  # [1, 2, 6, 3, 4, 5]

remove(element)

Elimina el primer elemento con el valor especificado de la lista.

scssCopy codemi_lista = [1, 2, 3, 4, 5]
mi_lista.remove(3)
print(mi_lista)  # [1, 2, 4, 5]

pop(index)

Elimina el elemento en una posiciΓ³n especΓ­fica de la lista y devuelve su valor.

scssCopy codemi_lista = [1, 2, 3, 4, 5]
elemento = mi_lista.pop(2)
print(mi_lista)  # [1, 2, 4, 5]
print(elemento)  # 3

index(element)

Devuelve la posiciΓ³n del primer elemento con el valor especificado en la lista.

perlCopy codemi_lista = [1, 2, 3, 4, 5]
index = mi_lista.index(3)
print(index)  # 2

count(element)

Devuelve el nΓΊmero de veces que aparece un elemento en la lista.

scssCopy codemi_lista = [1, 2, 3, 4, 3, 5]
count = mi_lista.count(3)
print(count)  # 2

sort()

Ordena los elementos de la lista en orden ascendente.

scssCopy codemi_lista = [5, 3, 1, 4, 2]
mi_lista.sort()
print(mi_lista)  # [1, 2, 3, 4, 5]

reverse()

Invierte el orden de los elementos en la lista.

scssCopy codemi_lista = [1, 2, 3, 4, 5]
mi_lista.clear()
print(mi_lista)  # []

clear()

Elimina todos los elementos de la lista.

mi_lista = [1, 2, 3, 4, 5]
mi_lista.reverse()
print(mi_lista)  # [5, 4, 3, 2, 1]

Estos son solo algunos de los mΓ©todos mΓ‘s comunes para trabajar con listas en Python. Hay muchos otros disponibles y es posible crear sus propios mΓ©todos personalizados tambiΓ©n.

Last updated