Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Aprendizaje Esperado
Codificar un algoritmo utilizando estructuras de datos del lenguaje
Python para resolver un problema.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Contexto
Las estructuras de datos en Python son fundamentales para organizar y
gestionar datos de manera eficiente en programas y aplicaciones. Python
ofrece una amplia variedad de estructuras de datos incorporadas que
facilitan la manipulación y el almacenamiento de información. Estas
estructuras, que incluyen listas, tuplas, conjuntos, diccionarios y más,
permiten a los programadores almacenar y recuperar datos de diferentes
maneras, adaptándose a las necesidades específicas de cada tarea.
Además, Python es conocido por su facilidad de uso y sintaxis legible, lo
que hace que trabajar con estructuras de datos sea accesible tanto para
principiantes como para desarrolladores experimentados. La elección de
la estructura de datos adecuada en Python es esencial para optimizar el
rendimiento y la eficiencia de un programa, y comprender cómo
funcionan estas estructuras es esencial para los programadores que
desean aprovechar al máximo el lenguaje.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
STRINGS
Definición
En Python, un string es una secuencia de caracteres que representa texto.
Puedes crear strings utilizando comillas simples ('), comillas dobles ("), o
comillas triples (''' o """) para strings multilínea. Por ejemplo:
Métodos de string
Python proporciona una variedad de métodos para manipular y trabajar
con strings. Algunos métodos comunes incluyen:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplos:
\t: Tabulación.
\': Comilla simple (para representar una comilla simple literal dentro
de una cadena entre comillas simples).
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
\": Comilla doble (para representar una comilla doble literal dentro
de una cadena entre comillas dobles).
Ejemplo:
Su salida:
Formateo de strings
Puedes formatear strings en Python de diversas maneras. Algunos de los
enfoques comunes incluyen:
f-Strings
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Por ejemplo:
Método format
Por ejemplo:
Sintaxis básica
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Donde:
Ejemplos:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Formato avanzado:
● Alineación y relleno.
Ejemplos:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
nombre = "Alice"
edad = 25
print(saludo)
Las f-strings son una característica introducida en Python 3.6 que nos permite incrustar
expresiones dentro de los strings de manera directa y legible.
# Usando f-strings
print(saludo_f)
Supongamos que queremos formatear un número flotante para mostrar solo dos
decimales.
pi = 3.14159265
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
print(formato_pi)
print(formato_pi_f)
Expresiones regulares
Las expresiones regulares, comúnmente conocidas como "regex" o
"regexp," son patrones utilizados para buscar, validar y manipular
cadenas de texto de manera eficiente y flexible. Python proporciona el
módulo re que permite trabajar con expresiones regulares.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
\d: Coincide con un dígito (0-9). Por ejemplo, \d+ coincide con uno o más
dígitos.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplos:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
FECHAS
Fechas y horas
Python viene con una variedad de objetos útiles que se pueden usar de
inmediato. Los objetos de fecha son ejemplos de tales objetos. Los tipos
de fecha son difíciles de manipular desde cero, debido a la complejidad
de fechas y horas. Sin embargo, los objetos de fecha de Python facilitan
enormemente la conversión de fechas en los formatos de cadena
deseables.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Su salida sería:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Para realizar operaciones con fechas, como sumar o restar días, horas,
minutos, segundos, etc., se debe usar, generalmente, el módulo
timedelta.
Ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Formato de fechas
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Su salida:
Resultado:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Conversiones
La conversión de datos a objetos datetime en Python es un proceso
común cuando se trabaja con fechas y horas en tus programas. Puedes
realizar la conversión de varias formas, dependiendo del formato en el
que tengas los datos.
Ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
COLECCIONES
Listas
Las listas son una estructura de datos fundamental en Python y se
utilizan para almacenar colecciones de elementos de cualquier tipo,
como números, cadenas, objetos y más. Las listas son mutables, lo que
significa que puedes modificar su contenido (agregar, eliminar o
modificar elementos) después de haberlas creado.
Pueden ser
Creación de listas
Ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Acceso a elementos
Modificación de elementos
Funciones de listas
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Añadir elementos
Eliminar elementos
Las listas en Python tienen un método clear() que elimina todos los
elementos de la lista, dejándola vacía.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Puedes recorrer una lista utilizando bucles como for. Este comando lo
vimos en capítulos anteriores:
Las listas en Python tienen una variedad de métodos útiles para realizar
tareas comunes, como agregar, eliminar, contar elementos, encontrar
índices y más.
Ejemplos:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejercicio guiado
Comenzaremos por crear una lista simple de elementos.
frutas.append('durazno')
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
frutas.sort()
frutas.reverse()
Listas y strings
En Python podemos usar los string de manera similar a las listas.
Además, podemos convertirlas desde un tipo al otro sin ninguna
dificultad.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Métodos de Strings
Ejemplos:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Puedes utilizar bucles for para recorrer tanto listas como strings:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplo completo
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplo completo
Puedes crear una nueva lista aplicando una expresión a cada elemento
de una secuencia (como una lista o rango) utilizando la siguiente
sintaxis:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplo
Ejemplo
También puedes anidar listas por comprensión para crear listas más
complejas. Por ejemplo, puedes crear una matriz utilizando listas por
comprensión anidadas.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Búsqueda de elementos
Para buscar elementos en una lista en Python, tienes varias opciones,
dependiendo de lo que necesites.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ordenamiento
El ordenamiento de listas es una operación común en la programación
para organizar elementos en una lista en un orden específico. Python
ofrece varias formas de ordenar listas.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
La función sorted() se utiliza para crear una nueva lista ordenada basada
en una lista existente sin modificar la original.
Si deseas invertir el orden de una lista sin ordenar los elementos, puedes
utilizar el método reverse().
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Función map()
Función filter()
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Función reduce()
por ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Matrices
Cuando necesitamos manejar muchos datos, generalmente hay
soluciones más efectivas que tener muchas variables. Por ejemplo, si hay
que guardar 100 números, suele ser más eficiente almacenar esos 100
datos "juntos", formando una "matriz", en vez de usar 100 variables
distintas.
Puedes crear una matriz utilizando listas anidadas. Cada lista interna
representa una fila de la matriz. Asegúrate de que todas las filas tengan
la misma longitud para crear una matriz rectangular.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Puedes recorrer una matriz utilizando bucles for. Por ejemplo, para
imprimir todos los elementos de la matriz:
Operaciones en Matrices
Para usar NumPy, primero debes instalarlo si no lo has hecho ya. Luego,
puedes crear matrices NumPy y realizar operaciones matriciales de la
siguiente manera:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Tuplas
Las tuplas en Python son estructuras de datos similares a las listas, pero
con la diferencia principal de que son inmutables. Esto significa que una
vez que creas una tupla, no puedes modificar su contenido (agregar,
eliminar o cambiar elementos).
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Puedes recorrer una tupla utilizando bucles for, de la misma manera que
lo harías con una lista.
Tuplas Inmutables
Una vez que una tupla se crea, no puedes modificar sus elementos.
Intentar hacerlo generará un error.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Empaquetado de Tuplas
Empaquetar una tupla significa crear una tupla que contiene múltiples
valores, separados por comas. Este proceso se realiza cuando asignas
varios valores a una sola variable.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Desempaquetado de Tuplas
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Ejemplo:
Diccionarios
Un diccionario es una estructura de datos y un tipo de dato en Python
con características especiales que nos permite almacenar cualquier tipo
de valor como enteros, cadenas, listas e incluso otras funciones. Estos
diccionarios nos permiten además identificar cada elemento por una
clave (Key).
Ejemplo:
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Eliminación de Elementos
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
● get(clave, valor_predeterminado)
Este método devuelve el valor asociado con una clave dada, si existe
en el diccionario. Si la clave no existe, en lugar de generar un error,
devuelve el valor predeterminado especificado.
● keys():
● values():
Este método devuelve una vista de todos los valores en el
diccionario, que también se puede convertir en una lista.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
● items():
Este método devuelve una vista de pares clave-valor en el
diccionario. Cada par es una tupla con dos elementos (clave, valor).
● pop(clave, valor_predeterminado):
Este método elimina la clave y el valor asociado con la clave del
diccionario. Puedes proporcionar un valor predeterminado que se
devolverá si la clave no existe en el diccionario.
● update(otro_diccionario):
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
● clear():
Este método elimina todos los elementos del diccionario, dejándolo
vacío.
● copy():
Este método crea una copia superficial del diccionario. Modificar la
copia no afectará al diccionario original y viceversa.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Iteración de un diccionario
Puedes recorrer un diccionario utilizando bucles for para acceder a sus
claves o valores, o ambas. Por ejemplo:
Claves
Las claves en un diccionario de Python son elementos únicos que se
utilizan para identificar y acceder a los valores asociados en el
diccionario.
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Referencias
● Docs – Python: datetime — Tipos básicos de fecha y hora
https://docs.python.org/es/3/library/datetime.html
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Estructuras de datos en Python
Módulo
Fundamentos de Programación Python