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