Contenido del curso
Evaluaci贸n de Conocimientos
Retroalimentaci贸n del Curso
Python Esencial: Fundamentos, L贸gica y Estructuras de Datos

El Principio DRY (Don’t Repeat Yourself)

Imagina que tienes un c谩lculo complejo para el impuesto de tus productos. Si tienes que escribir esa f贸rmula 20 veces en diferentes partes de tu c贸digo, y luego el gobierno cambia la tasa de impuestos, tendr谩s que buscar y corregir 20 lugares. Eso es ineficiente y peligroso.

Las Funciones te permiten encapsular esa l贸gica en un solo lugar y reutilizarla infinitas veces invoc谩ndola por su nombre. Es como crear tus propios comandos personalizados en Python.

Anatom铆a de una Funci贸n

Se definen con la palabra clave `def`, seguida de un nombre, par茅ntesis para los par谩metros (inputs) y dos puntos. El cuerpo de la funci贸n va indentado. Generalmente, una funci贸n devuelve un resultado con `return`.

def calcular_precio_final(precio_base, impuesto=0.21, descuento=0):
                """
                Calcula el precio final aplicando impuesto y restando descuento.
                """
                precio_con_impuesto = precio_base * (1 + impuesto)
                precio_final = precio_con_impuesto - descuento
                return precio_final

            # Uso de la funci贸n
            producto_a = calcular_precio_final(100) # Usa impuesto por defecto (0.21)
            producto_b = calcular_precio_final(200, impuesto=0.10, descuento=5)

            print(f"Precio A: {producto_a}")
            print(f"Precio B: {producto_b}")

Beneficios para el Emprendedor

Modularidad

Divide problemas grandes en piezas peque帽as y manejables. Puedes tener una funci贸n `obtener_datos()`, otra `procesar_datos()` y otra `enviar_reporte()`.

Mantenibilidad

Si la l贸gica cambia (ej. cambia la f贸rmula de impuestos), solo actualizas el c贸digo en un lugar (dentro de la funci贸n) y todo tu sistema se actualiza autom谩ticamente.

Legibilidad

Leer `enviar_factura(cliente)` es mucho m谩s claro que leer 50 l铆neas de c贸digo crudo que hacen el env铆o.

Scope (Alcance) de Variables

Es vital entender que las variables creadas dentro de una funci贸n son locales. No existen fuera de ella. Esto protege tus datos globales de ser modificados accidentalmente por una funci贸n auxiliar.

def saludo():
                mensaje = "Hola" # Variable local
                return mensaje

            print(saludo()) # Funciona
            # print(mensaje) # Error! 'mensaje' no existe aqu铆 fuera