Las listas en Python son colecciones ordenadas y mutables de elementos, que permiten almacenar múltiples valores en una sola variable. Son uno de los tipos de datos más utilizados en Python debido a su flexibilidad y versatilidad.
# Creación de listas
lista_vacia = []
lista_numeros = [1, 2, 3, 4, 5]
lista_mixta = [1, "hola", 3.14, True]
# Acceso a elementos de la lista
primer_elemento = lista_numeros[0]
ultimo_elemento = lista_numeros[-1]
# Modificación de elementos
lista_numeros[1] = 10
# Añadir elementos a la lista
lista_numeros.append(6) # Añadir al final
lista_numeros.insert(2, 15) # Insertar en una posición específica
# Eliminar elementos de la lista
lista_numeros.remove(10) # Eliminar por valor
ultimo_elemento = lista_numeros.pop() # Eliminar el último elemento y devolverlo
elemento_especifico = lista_numeros.pop(2) # Eliminar y devolver el elemento en una posición específica
# Rebanado de listas (slicing)
sub_lista = lista_numeros[1:4] # Obtener elementos desde el índice 1 hasta el 3 (excluyendo el 4)
sub_lista_inicio = lista_numeros[:3] # Obtener los primeros tres elementos
sub_lista_fin = lista_numeros[2:] # Obtener los elementos desde el índice 2 hasta el final
# Longitud de la lista
longitud = len(lista_numeros)
# Iterar sobre una lista
for numero in lista_numeros:
print(numero)
# Métodos de listas comunes
lista_numeros.sort() # Ordenar la lista
lista_numeros.reverse() # Invertir el orden de la lista
indice = lista_numeros.index(4) # Obtener el índice de un elemento específico
conteo = lista_numeros.count(4) # Contar las veces que un elemento aparece en la lista
# Concatenación de listas
otra_lista = [7, 8, 9]
lista_concatenada = lista_numeros + otra_lista
# Comprensión de listas (list comprehensions)
cuadrados = [x**2 for x in lista_numeros]
# Imprimir resultados para ver los cambios
print("Lista original:", lista_numeros)
print("Primer elemento:", primer_elemento)
print("Último elemento:", ultimo_elemento)
print("Lista después de modificaciones:", lista_numeros)
print("Sub lista (1:4):", sub_lista)
print("Sub lista (inicio hasta 3):", sub_lista_inicio)
print("Sub lista (desde 2 hasta fin):", sub_lista_fin)
print("Longitud de la lista:", longitud)
print("Lista concatenada:", lista_concatenada)
print("Cuadrados:", cuadrados)
Las listas se crean utilizando corchetes []
y pueden contener elementos de cualquier tipo de datos. Puedes crear una lista vacía o inicializarla con valores.
lista_vacia = []
: Crea una lista vacía.lista_numeros = [1, 2, 3, 4, 5]
: Crea una lista de números enteros.lista_mixta = [1, "hola", 3.14, True]
: Crea una lista que contiene diferentes tipos de datos.Puedes acceder a los elementos de una lista utilizando índices. Los índices comienzan en 0 para el primer elemento. Los índices negativos permiten acceder a los elementos desde el final de la lista.
primer_elemento = lista_numeros[0]
: Accede al primer elemento.ultimo_elemento = lista_numeros[-1]
: Accede al último elemento.Puedes modificar los elementos de una lista asignando un nuevo valor a un índice específico.
lista_numeros[1] = 10
: Cambia el segundo elemento de 2
a 10
.Puedes añadir elementos a una lista utilizando los métodos append
e insert
.
lista_numeros.append(6)
: Añade 6
al final de la lista.lista_numeros.insert(2, 15)
: Inserta 15
en la posición 2
.Puedes eliminar elementos de una lista utilizando los métodos remove
, pop
, y del
.
lista_numeros.remove(10)
: Elimina la primera ocurrencia de 10
.ultimo_elemento = lista_numeros.pop()
: Elimina y devuelve el último elemento.elemento_especifico = lista_numeros.pop(2)
: Elimina y devuelve el elemento en la posición 2
.Puedes obtener sublistas utilizando la notación de rebanado.
sub_lista = lista_numeros[1:4]
: Obtiene los elementos desde el índice 1
hasta el 3
(excluyendo el 4
).sub_lista_inicio = lista_numeros[:3]
: Obtiene los primeros tres elementos.sub_lista_fin = lista_numeros[2:]
: Obtiene los elementos desde el índice 2
hasta el final.Puedes obtener la longitud de una lista utilizando la función len
.
longitud = len(lista_numeros)
: Devuelve el número de elementos en la lista.Puedes iterar sobre los elementos de una lista utilizando un bucle for
.
for numero in lista_numeros: print(numero)
: Imprime cada número en la lista.Las listas en Python tienen muchos métodos útiles para manipular sus elementos.
lista_numeros.sort()
: Ordena la lista en orden ascendente.lista_numeros.reverse()
: Invierte el orden de la lista.indice = lista_numeros.index(4)
: Devuelve el índice de la primera ocurrencia de 4
.conteo = lista_numeros.count(4)
: Devuelve el número de veces que 4
aparece en la lista.Puedes concatenar dos listas utilizando el operador +
.
lista_concatenada = lista_numeros + otra_lista
: Concatenación de lista_numeros
y otra_lista
.Las comprensiones de listas son una forma concisa de crear listas. Permiten aplicar una expresión a cada elemento de una secuencia y construir una nueva lista en una sola línea.
cuadrados = [x**2 for x in lista_numeros]
: Crea una lista de los cuadrados de cada número en lista_numeros
.[]
y pueden contener cualquier tipo de datos.append
e insert
para añadir elementos a la lista.remove
, pop
, y del
para eliminar elementos de la lista.len
para obtener la longitud de una lista.for
para iterar sobre los elementos de una lista.sort
, reverse
, index
y count
permiten manipular listas.+
para concatenar listas.Las tuplas en Python son colecciones ordenadas e inmutables de elementos. A diferencia de las listas, una vez creadas, las tuplas no pueden ser modificadas. Se utilizan cuando se desea almacenar una secuencia de elementos que no deben cambiar a lo largo de la ejecución del programa.
# Creación de tuplas
tupla_vacia = ()
tupla_numeros = (1, 2, 3, 4, 5)
tupla_mixta = (1, "hola", 3.14, True)
# Acceso a elementos de la tupla
primer_elemento = tupla_numeros[0]
ultimo_elemento = tupla_numeros[-1]
# Desempaquetado de tuplas
a, b, c, d, e = tupla_numeros
print("Desempaquetado:", a, b, c, d, e)
# Desempaquetado parcial
x, y, *resto = tupla_numeros
print("Desempaquetado parcial:", x, y, resto)
# Concatenación de tuplas
tupla_concatenada = tupla_numeros + (6, 7, 8)
print("Tupla concatenada:", tupla_concatenada)
# Repetición de tuplas
tupla_repetida = tupla_numeros * 2
print("Tupla repetida:", tupla_repetida)
# Comprobar si un elemento está en una tupla
existe = 3 in tupla_numeros
print("El número 3 está en la tupla:", existe)
# Longitud de la tupla
longitud = len(tupla_numeros)
print("Longitud de la tupla:", longitud)
# Iterar sobre una tupla
for numero in tupla_numeros:
print("Número en tupla:", numero)
# Índice de un elemento en una tupla
indice = tupla_numeros.index(3)
print("Índice del número 3:", indice)
# Contar apariciones de un elemento en una tupla
conteo = tupla_numeros.count(3)
print("Apariciones del número 3:", conteo)
Las tuplas se crean utilizando paréntesis ()
y pueden contener elementos de cualquier tipo de datos. Se pueden crear tuplas vacías o inicializarlas con valores.
tupla_vacia = ()
: Crea una tupla vacía.tupla_numeros = (1, 2, 3, 4, 5)
: Crea una tupla de números enteros.tupla_mixta = (1, "hola", 3.14, True)
: Crea una tupla que contiene diferentes tipos de datos.Puedes acceder a los elementos de una tupla utilizando índices, al igual que con las listas. Los índices comienzan en 0 para el primer elemento y pueden ser negativos para acceder desde el final.
primer_elemento = tupla_numeros[0]
: Accede al primer elemento.ultimo_elemento = tupla_numeros[-1]
: Accede al último elemento.El desempaquetado de tuplas permite asignar los elementos de una tupla a variables individuales.
a, b, c, d, e = tupla_numeros
: Asigna cada elemento de tupla_numeros
a las variables a
, b
, c
, d
, y e
.x, y, *resto = tupla_numeros
: Asigna los primeros dos elementos a x
y y
, y el resto a resto
.Puedes concatenar tuplas utilizando el operador +
.
tupla_concatenada = tupla_numeros + (6, 7, 8)
: Crea una nueva tupla combinando tupla_numeros
y (6, 7, 8)
.Puedes repetir los elementos de una tupla utilizando el operador *
.
tupla_repetida = tupla_numeros * 2
: Repite los elementos de tupla_numeros
dos veces.Puedes comprobar si un elemento está presente en una tupla utilizando el operador in
.
existe = 3 in tupla_numeros
: Devuelve True
si 3
está en tupla_numeros
, de lo contrario, False
.Puedes obtener la longitud de una tupla utilizando la función len
.
longitud = len(tupla_numeros)
: Devuelve el número de elementos en la tupla.Puedes iterar sobre los elementos de una tupla utilizando un bucle for
.
for numero in tupla_numeros
: Itera sobre cada número en la tupla tupla_numeros
.Puedes obtener el índice de la primera aparición de un elemento utilizando el método index
.
indice = tupla_numeros.index(3)
: Devuelve el índice de la primera aparición de 3
en la tupla.Puedes contar el número de veces que un elemento aparece en una tupla utilizando el método count
.
conteo = tupla_numeros.count(3)
: Devuelve el número de veces que 3
aparece en la tupla.()
y pueden contener cualquier tipo de datos.+
para concatenar tuplas.*
para repetir los elementos de una tupla.in
para comprobar si un elemento está presente en una tupla.len
para obtener la longitud de una tupla.for
para iterar sobre los elementos de una tupla.index
para obtener el índice de la primera aparición de un elemento.count
para contar el número de veces que un elemento aparece en una tupla.Los diccionarios en Python son colecciones desordenadas de pares clave-valor. Cada clave debe ser única y está asociada a un valor. Los diccionarios son mutables, lo que significa que se pueden modificar después de su creación.
# Creación de diccionarios
diccionario_vacio = {}
diccionario_persona = {
"nombre": "Juan",
"edad": 30,
"ciudad": "Madrid"
}
# Acceso a elementos del diccionario
nombre = diccionario_persona["nombre"]
edad = diccionario_persona["edad"]
# Modificación de valores
diccionario_persona["edad"] = 31
# Añadir nuevos pares clave-valor
diccionario_persona["profesión"] = "Ingeniero"
# Eliminar pares clave-valor
del diccionario_persona["ciudad"]
# Métodos de diccionarios
# Obtener todas las claves
claves = diccionario_persona.keys()
# Obtener todos los valores
valores = diccionario_persona.values()
# Obtener todos los pares clave-valor
pares = diccionario_persona.items()
# Comprobar si una clave existe en el diccionario
existe_clave = "nombre" in diccionario_persona
# Obtener un valor de forma segura
profesion = diccionario_persona.get("profesión", "Desconocida")
# Eliminar y devolver un valor
ciudad = diccionario_persona.pop("ciudad", "No disponible")
# Limpiar el diccionario
diccionario_persona.clear()
# Crear un diccionario a partir de una lista de claves
claves = ["nombre", "edad", "ciudad"]
valores_defecto = dict.fromkeys(claves, "Desconocido")
# Iterar sobre un diccionario
for clave, valor in diccionario_persona.items():
print(f"{clave}: {valor}")
# Imprimir resultados para ver los cambios
print("Diccionario original:", diccionario_persona)
print("Nombre:", nombre)
print("Edad:", edad)
print("Diccionario modificado:", diccionario_persona)
print("Claves:", list(claves))
print("Valores:", list(valores))
print("Pares:", list(pares))
print("Existe 'nombre':", existe_clave)
print("Profesión:", profesion)
print("Ciudad eliminada:", ciudad)
print("Diccionario después de clear:", diccionario_persona)
print("Valores por defecto:", valores_defecto)
Los diccionarios se crean utilizando llaves {}
y pueden contener pares clave-valor. Las claves deben ser únicas y pueden ser de cualquier tipo inmutable (como cadenas o números). Los valores pueden ser de cualquier tipo.
diccionario_vacio = {}
: Crea un diccionario vacío.diccionario_persona = {"nombre": "Juan", "edad": 30, "ciudad": "Madrid"}
: Crea un diccionario con tres pares clave-valor.Puedes acceder a los valores de un diccionario utilizando sus claves. Si la clave no existe, se produce un error KeyError
.
nombre = diccionario_persona["nombre"]
: Accede al valor asociado con la clave "nombre"
.edad = diccionario_persona["edad"]
: Accede al valor asociado con la clave "edad"
.Puedes modificar los valores de un diccionario asignando un nuevo valor a una clave existente.
diccionario_persona["edad"] = 31
: Cambia el valor de la clave "edad"
a 31
.Puedes añadir nuevos pares clave-valor a un diccionario asignando un valor a una nueva clave.
diccionario_persona["profesión"] = "Ingeniero"
: Añade un nuevo par clave-valor "profesión": "Ingeniero"
.Puedes eliminar pares clave-valor de un diccionario utilizando la palabra clave del
.
del diccionario_persona["ciudad"]
: Elimina el par clave-valor con la clave "ciudad"
.Los diccionarios tienen varios métodos útiles para manipular sus elementos.
diccionario_persona.keys()
: Devuelve una vista de todas las claves del diccionario.diccionario_persona.values()
: Devuelve una vista de todos los valores del diccionario.diccionario_persona.items()
: Devuelve una vista de todos los pares clave-valor del diccionario."nombre" in diccionario_persona
: Devuelve True
si la clave "nombre"
existe en el diccionario.diccionario_persona.get("profesión", "Desconocida")
: Devuelve el valor de la clave "profesión"
o "Desconocida"
si la clave no existe.diccionario_persona.pop("ciudad", "No disponible")
: Elimina y devuelve el valor de la clave "ciudad"
o "No disponible"
si la clave no existe.diccionario_persona.clear()
: Elimina todos los elementos del diccionario.dict.fromkeys(claves, "Desconocido")
: Crea un nuevo diccionario con las claves de claves
y valores "Desconocido"
.Puedes iterar sobre los pares clave-valor de un diccionario utilizando un bucle for
.
for clave, valor in diccionario_persona.items()
: Itera sobre cada par clave-valor del diccionario.{}
y contienen pares clave-valor.del
para eliminar pares clave-valor.keys()
, values()
, items()
, get()
, pop()
, y clear()
para manipular diccionarios.for
para iterar sobre los pares clave-valor de un diccionario.