Funciones

Funciones en Python



Las funciones permiten organizar el código en bloques reutilizables. A continuación se presentan sus principales características y conceptos clave:


1. ¿Qué es una función?

Una función es un bloque de código que se puede reutilizar varias veces. Se define con def.

def saludar():
    print("Hola desde una función")

2. Parámetros y argumentos

Los parámetros son variables en la definición. Los argumentos son los valores que se pasan al llamar la función.

def saludar(nombre):
    print("Hola", nombre)

saludar("Luis")

3. Paso de argumentos

Los argumentos se pasan en el mismo orden que los parámetros.

def mostrar(nombre, edad):
    print(nombre, "tiene", edad, "años")

mostrar("Ana", 25)

4. Retorno de una función

Una función puede devolver un resultado con return.

def cuadrado(n):
    return n * n

print(cuadrado(4))

5. Argumento por defecto

Un parámetro puede tener un valor predeterminado.

def saludar(nombre="amigo"):
    print("Hola", nombre)

saludar()
saludar("Carlos")

6. Número indeterminado de argumentos

Con *args puedes pasar varios argumentos.

def sumar(*numeros):
    print(sum(numeros))

sumar(1, 2, 3, 4)

7. Ámbito de parámetros y argumentos

Los parámetros existen solo dentro de la función.

def mensaje():
    texto = "Hola"
    print(texto)

mensaje()
# print(texto)  ← Error: variable fuera del alcance

8. Paso de argumentos por asignación

Los tipos mutables pueden modificarse dentro de la función.

def agregar(lista):
    lista.append(4)

numeros = [1, 2, 3]
agregar(numeros)
print(numeros)

9. Las funciones son objetos

Puedes asignar funciones a variables y usarlas.

def saludar():
    print("¡Hola!")

f = saludar
f()

10. Funciones recursivas

Una función puede llamarse a sí misma.

def factorial(n):
    if n == 0:
        return 1
    return n * factorial(n - 1)

print(factorial(5))

11. Funciones recursivas múltiples

Una función recursiva puede hacer más de una llamada.

def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n-1) + fibonacci(n-2)

print(fibonacci(6))

12. Riesgos de la recursión

Una recursión sin fin puede causar errores de memoria.

def infinito():
    return infinito()

# infinito()  ← ¡No lo ejecutes! Provoca error

13. Documentación de funciones

Puedes documentar una función con comillas triples (""").

def sumar(a, b):
    """Devuelve la suma de dos números"""
    return a + b

print(sumar.__doc__)

Ejercicios de Funciones en Python

Practica lo aprendido con estos ejercicios. Haz clic en "Mostrar respuesta" para ver la solución como imagen.


Ejercicio 1

Crea una función llamada saludar que reciba un nombre como argumento y muestre el mensaje "Hola, [nombre]!".


Ejercicio 2

Crea una función llamada area_circulo que reciba el radio de un círculo y retorne su área. Usa la fórmula: área = pi * r². Usa pi = 3.1416.


Ejercicio 3

Escribe una función llamada es_par que reciba un número entero y retorne True si es par, o False si es impar.


Ejercicio 4

Crea una función multiplicar_lista que reciba una lista de números y retorne el producto de todos ellos.


Ejercicio 5

Escribe una función recursiva llamada contador_regresivo que reciba un número entero positivo y lo muestre en cuenta regresiva hasta 0.

Te invitamos al siguiente módulo del curso Módulos, para que continúes con tu avance.

No hay comentarios:

Publicar un comentario

Políticas de Privacidad