Resumen UD4 – Arrays y Cadenas
1. ¿qué es una estructura de datos?
Son formas de organizar, almacenar y manipular datos de forma eficiente. En la unidad se explica qué cuando necesitamos manejar grandes cantidades de datos (como las notas de muchos estudiantes), necesitamos estructuras como arrays o listas.
2. Arrays y Listas en Python
En Python, los arrays tradicionales se representan mediante listas, qué son estructuras flexibles, dinámicas y muy potentes.
Declaración de listas
mi_lista = [10, 20, 30]
lista_vacia = []
ceros = [0] * 5
Acceso y modificación
mi_lista[0] # Primer elemento
mi_lista[-1] # Último elemento
mi_lista[2] = 15 # Modificar valor
Recorridos
# Con índice
for i in range(len(lista)):
print(lista[i])
# For-each
for elemento in lista:
print(elemento)
3. métodos básicos de listas
append()– Añadir al finalinsert(pos, elem)– Insertar en una posiciónremove(valor)– Eliminar por valorpop(pos)– Extraer elementolen()– Longitud
4. Slicing o División de Listas
Permite extraer partes de una lista mediante rangos:
lista[2:5]
lista[:3]
lista[::-1] # Invertir
5. Operaciones avanzadas con arrays
Incluyen búsqué Ordenación, copia, unión, Comparación y más.
6. búsqueda
búsqué secuencial
Recorre la lista elemento a elemento.
búsqué binaria
Requé la lista ordenada y es mucho más rápida.
7. Ordenación
lista.sort() # Modifica la lista
ordenada = sorted(lista) # Devuelve una copia ordenada
8. Comparación de listas
- Misma longitud
- Mismos valores
- En el mismo orden
9. Copia de listas
lista2 = lista.copy()
lista3 = lista[:]
10. Matrices (Arrays 2D)
Declaración
matriz = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
Acceso
matriz[1][2] # Devuelve 6
Recorrido anidado
for fila in matriz:
for elemento in fila:
print(elemento)
11. Cadenas de texto (strings)
Son inmutables, recorrribles, indexables y compatibles con slicing.
métodos importantes
.lower().upper().strip().replace().split().join()
Ejemplo slicing
cadena[::-1] # Invertir texto
12. Formateo de cadenas: f-strings
producto = "Laptop"
precio = 850.50
print(f"El {producto} cuesta {precio:.2f}")
13. Expresiones Regulares (RegEx)
Funciones del módulo re
re.search()re.findall()re.match()
Patrones comunes
\d→ dígito\w→ carácter de palabra.→ cualqué carácter{n}→ cantidad exacta