Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

Anotaciones de tipo Funciones y lógica en Python

Cuando escribimos funciones en Python, a veces puede ser difícil entender qué tipos de datos esperan recibir y qué tipo devuelven. Las anotaciones de tipo nos ayudan a hacer esto más claro.

¿Qué son las anotaciones de tipo?

Las anotaciones de tipo permiten especificar los tipos de los parámetros y del valor de retorno de una función.

No es obligatorio usarlas en Python, porque el lenguaje sigue siendo dinámico, pero sí pueden hacer que el código sea más fácil de leer y entender.

Sin anotaciones de tipo, podríamos tener una función como esta:

def concat(first, second):
    return first + second

A simple vista, no queda claro qué tipo de datos deben ser first y second. Si los valores son cadenas (str), la función los concatenará, pero si son números (int o float), intentará sumarlos. Eso puede generar confusión o errores si la función se usa con valores inesperados.

Agregando anotaciones de tipo

Podemos mejorar la claridad del código agregando anotaciones de tipo:

def concat(first: str, second: str) -> str:
    return first + second

¿Qué indican estas anotaciones?

  • first: str y second: str → Significa que los parámetros first y second deben ser de tipo cadena (str).
  • -> str → Indica que el resultado de la función también será una cadena.

Con esto, queda más claro que la función espera dos cadenas y que el resultado será otra cadena.

Anotaciones de Tipo en Variables dentro de la Función

También es posible especificar el tipo de las variables dentro de la función:

def double(n: int) -> int:
    result: int = n * 2
    return result

Aquí indicamos que:

  • n debe ser un número entero (int).
  • result también es un entero.
  • La función devuelve un entero.

Aunque estas anotaciones ayudan a describir el código, Python no las aplica estrictamente. Es decir, podríamos llamar a double("5") (una cadena en lugar de un entero) y Python lo ejecutaría sin errores inmediatos. Sin embargo, herramientas externas como mypy pueden usarlas para verificar si el código es consistente con los tipos especificados.

Beneficios de usar anotaciones de tipo

Aunque Python no obliga a seguir estas anotaciones al ejecutar el código, usarlas tiene ventajas:

Mejor legibilidad: Al leer el código, es más fácil entender qué datos espera la función y qué devuelve.

Menos errores: Al especificar tipos, evitamos confusiones sobre cómo se debería usar una función.

Soporte para herramientas de análisis estático: Herramientas como mypy pueden ayudarnos a detectar errores de tipo antes de ejecutar el programa.


Resumen

  • Las anotaciones de tipo permiten indicar qué tipos de datos deberían recibir y devolver las funciones en Python.
  • Se pueden usar tanto en los parámetros de una función como en variables dentro de la función.
  • Python no impone estas anotaciones en tiempo de ejecución, pero herramientas externas pueden usarlas para verificar errores de tipo.
  • Son una buena práctica para escribir código más claro y confiable.

Si quieres escribir código que otras personas (o incluso tú mismo en el futuro) puedan entender más fácilmente, usar anotaciones de tipo es un buen hábito.

Para acceder completo a curso necesitas un plan básico

El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY