- 1

Fundamentos de Programación con Python para Principiantes
02:04 - 2

Instalación y Uso Básico de Python en Windows y Mac
08:10 - 3

Semántica y Sintaxis en Programación Python
10:15 - 4
Práctica: Te doy la bienvenida a los ejercicios interactivos
00:00 - 5

Manejo de Cadenas y Operaciones Básicas en Python
13:06 - 6

Tipos de Datos en Python: Enteros, Flotantes y Booleanos
07:22 - 7
Dominio de la función `print` en Python: usos y formatos avanzados
04:00 - 8

Operaciones matemáticas avanzadas en Python: módulo, potencia y más
11:01 - 9

Entrada de información y manejo de tipos de datos en Python
04:53
Anotaciones de Tipo en Python para Código Más Legible
Clase 41 de 63 • Curso de Python
Contenido del curso
- 23

Programación Orientada a Objetos en Python: Clases y Métodos Básicos
14:11 - 24

Gestión de Biblioteca con Programación Orientada a Objetos
18:07 - 25

Herencia y Polimorfismo en Programación Orientada a Objetos
13:57 - 26

Programación Orientada a Objetos: Implementación de Clases y Herencia
13:10 - 27

Polimorfismo en Programación Orientada a Objetos
06:21 - 28

Herencia y Uso de la Función super() en Python
07:28 - 29
Programación Orientada a Objetos: Atributos, Métodos y `super()` en Python
05:06
- 37
Programación Avanzada en Python: POO, Excepciones y Proyectos
01:45 - 38

Escritura de Código Pytónico y Buenas Prácticas en Python
03:58 - 39

Comentarios y Docstrings: Buenas Prácticas en Programación
07:01 - 40

Tiempo de vida y alcance de variables en Python
14:11 - 41

Anotaciones de Tipo en Python para Código Más Legible
13:12 - 42

Validación de Tipos y Manejo de Excepciones en Python
13:05 - 43

Estructuras de Datos Avanzadas en Python: Collection y Enumeraciones
13:15
- 47

Uso de Métodos Mágicos en Python
06:47 - 48
Sobrecarga de Operadores en Python: Personaliza Comportamiento de Clases
04:18 - 49

Ejecutar scripts Python con `if __name__ == '__main__'`
05:42 - 50

Metaprogramación en Python: Métodos `__new__` y `__init__`
03:59 - 51

Uso de *args y **kwargs en funciones de Python
14:32 - 52

Métodos y Atributos Privados y Protegidos en Python
09:26 - 53

Uso de Property en Python: Getter, Setter y Eliminación de Atributos
07:56 - 54

Métodos estáticos y de clase en Python
07:46
¿Qué son las anotaciones en Python?
Las anotaciones en Python son una herramienta que permite agregar información adicional sobre las variables, funciones y métodos que programamos. Aunque no restringen el tipo de datos que se puede almacenar en una variable, proporcionan un contexto más claro sobre el objetivo del código, beneficiando la legibilidad y comprensión, especialmente en entornos de trabajo en equipo.
¿Cómo se utilizan las anotaciones en las variables?
Las anotaciones para las variables consisten en especificar el tipo esperado usando dos puntos seguidos de la declaración del tipo. Por ejemplo, al crear un identificador para empleados, podríamos especificarlo de la siguiente manera:
id1: int = 101
id2: int = 102
Al realizar operaciones, también podemos anotar el tipo de resultado:
total_id: int = id1 + id2
¿Cómo se implementan en funciones y métodos?
En las funciones, las anotaciones ayudan a definir los tipos de datos que los parámetros deben recibir y el tipo de dato que devolverá la función. La sintaxis se asemeja a esto:
def sumar_ids_empleados(id1: int, id2: int) -> int:
return id1 + id2
En este ejemplo, se especifica que los parámetros id1 y id2 deben ser enteros y que el resultado también será un entero.
¿Cómo usar anotaciones en clases?
Al trabajar con clases, las anotaciones ayudan a definir tipos de los atributos y métodos. Veamos un ejemplo de una clase Empleado:
class Empleado:
def __init__(self, nombre: str, edad: int, salario: float):
self.nombre = nombre
self.edad = edad
self.salario = salario
def presentarse(self) -> str:
return f"Hola, me llamo {self.nombre}. Tengo {self.edad} años."
Aquí se utilizan anotaciones para definir los tipos de parámetros esperados en el constructor y el tipo de dato que devuelve el método presentarse.
¿Cómo verificar tipos de datos usando librerías?
Además de las anotaciones, es posible utilizar herramientas como MyPy para analizar estáticamente el tipo de datos en un archivo Python, buscando posibles inconsistencias o errores. MyPy no es parte de la biblioteca estándar de Python, por lo que necesitas instalarlo:
pip install mypy
Luego, puedes usarlo para analizar un archivo:
mypy mi_archivo.py
¿Qué son Optional y Union?
Las librerías Optional y Union permiten mayor flexibilidad en las anotaciones al trabajar con funciones que pueden manejar múltiples tipos de datos o retornar None.
- Optional: Indica que un valor podría ser del tipo especificado o
None.
from typing import Optional
def encontrar_empleado(ids: list[int], id_buscado: int) -> Optional[int]:
if id_buscado in ids:
return id_buscado
return None
- Union: Se usa cuando necesitas aceptar múltiples tipos de datos específicos, pero no
None.
from typing import Union
def procesar_salario(salario: Union[int, float]) -> float:
return float(salario)
Retos y recomendaciones prácticas
Te animamos a aplicar estos conceptos creando una función que procese diccionarios de empleados y los filtre según el salario. Experimenta con diferentes tipos de anotaciones y comparte tus resultados en los comentarios.
¡Continúa explorando y experimentando con Python! Las anotaciones son solo el comienzo para lograr un código más entendible y fácil de mantener.