Las listas son una estructura de datos muy versátil y ampliamente utilizada que permite almacenar una colección ordenada de elementos. Las listas son mutables, lo que significa que pueden modificarse después de su creación. Cada elemento en una lista tiene un índice asociado que comienza en 0 para el primer elemento, 1 para el segundo y así sucesivamente.
Crear una lista:
mi_lista = [1, 2, 3, 4, 5]
Acceder a elementos:
primer_elemento = mi_lista[0] # Obtiene el primer elemento (valor: 1)
segundo_elemento = mi_lista[1] # Obtiene el segundo elemento (valor: 2)
ultimo_elemento = mi_lista[-1] # Obtiene el último elemento (valor: 5)
Modificar elementos:
mi_lista[2] = 10 # Modifica el tercer elemento, ahora la lista es [1, 2, 10, 4, 5]
Longitud de la lista:
longitud = len(mi_lista) # Devuelve 5, que es el número de elementos en la lista
Agregar elementos:
mi_lista.append(6) # Agrega el valor 6 al final de la lista, ahora la lista es [1, 2, 10, 4, 5, 6]
Insertar un elemento a la lista
nombres = ['uno', 2, "tres", 3.5]
nombres.insert(1,"incluido") #se incluye en el índice 1
Partes (slicing) de listas:
sub_lista = mi_lista[1:4] # Obtiene una nueva lista desde el segundo elemento hasta el cuarto (valores: [2, 4, 5])
Verificar si un elemento está en la lista:
if 3 in mi_lista:
print("El valor 3 está en la lista.")
Concatenar listas:
otra_lista = [7, 8, 9]
concatenada = mi_lista + otra_lista # Crea una nueva lista combinando las dos listas anteriores
Eliminar un elemento a la lista por valor
nombres = [‘uno’, 2, “tres”, 3.5, ‘uno’]
nombres.remove(‘uno’) # elimina el elemento de contenido ‘uno’ (el primero que se encuentra)
Eliminar el último elemento de la lista
nombres = [‘uno’, 2, “tres”, 3.5, ‘uno’]
a=nombres.pop()
print(a) #Muestra el elemento que ha sacado
Eliminar elementos:
del mi_lista[2] # Elimina el tercer elemento, ahora la lista es [1, 2, 4, 5, 6]
Eliminar todos los elementos:
nombres = [‘uno’, 2, “tres”, 3.5, ‘uno’]
nombres.clear()
Eliminar la lista (libera la memoria):
nombres = [‘uno’, 2, “tres”, 3.5, ‘uno’]
del nombres
Las listas pueden contener cualquier tipo de elemento, incluso otras listas (lo que se conoce como listas anidadas). Son muy útiles para almacenar datos relacionados, realizar iteraciones, y se utilizan ampliamente en la programación Python.
Ordenar
Python ofrece dos maneras principales de ordenar una lista:
1. Función sorted():
Esta función crea una nueva lista ordenada a partir de la original. No modifica la lista original.
lista = [“a”, “c”, “b”, “d”]
lista_ordenada = sorted(lista)
print(lista) # Imprime: [‘a’, ‘c’, ‘b’, ‘d’]
print(lista_ordenada) # Imprime: [‘a’, ‘b’, ‘c’, ‘d’]
Parámetros:
reverse=True: Ordena de mayor a menor.
key=funcion: Función que define cómo se ordenan los elementos.
lista_ordenada = sorted(lista, reverse=True)
lista = [“hola”, “mundo”, “Python”]
def por_longitud(s):
return len(s)
lista_ordenada = sorted(lista, key=por_longitud)
print(lista_ordenada) # Imprime: [‘mundo’, ‘hola’, ‘Python’]
2. Método sort():
Este método modifica la lista original ordenándola. No crea una nueva lista.
lista = [“a”, “c”, “b”, “d”]
lista.sort()
print(lista) # Imprime: [‘a’, ‘b’, ‘c’, ‘d’]
Parámetros:
reverse=True: Ordena de mayor a menor.
key=funcion: Función que define cómo se ordenan los elementos.
Ejemplo de ordenar por longitud de string:
lista = [“hola”, “mundo”, “Python”]
def por_longitud(s):
return len(s)
lista.sort(key=por_longitud)
print(lista) # Imprime: [‘mundo’, ‘hola’, ‘Python’]