0Pricing
Python Academy · Lección

Definición y llamada de funciones

Cree funciones con def y llámelas con argumentos.

Definición y llamada de funciones es una lección gratuita de Python Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python Academy incluye 4 lecciones en total.

Introducción

Las funciones son bloques de código reutilizables definidos con def. Evitan la repetición y facilitan las pruebas y el mantenimiento de los programas.

Palabra clave def

def greet(name): define una función. El cuerpo lleva sangría. Llámela con greet('Alice').
def greet(name):
    print('Hello', name)
greet('Alice')

Argumentos posicionales

Los argumentos se pasan por posición. def add(a, b): return a + b; add(3,4) produce 7.
def add(a, b):
    return a + b
print(add(3, 4))

Sentencia return

return envía un valor de vuelta a quien llama a la función. Una función sin return devuelve None implícitamente.
def square(x):
    return x * x
result = square(5)
print(result)

Varios valores de retorno

def min_max(lst): return min(lst), max(lst) devuelve una tupla. Desempaquétela así: lo, hi = min_max(lst).
def min_max(lst):
    return min(lst), max(lst)
lo, hi = min_max([3,1,4,1,5])
print(lo, hi)

Docstrings

La primera cadena del cuerpo de una función es su docstring: """One-line summary.""" Acceda a ella con help() o func.__doc__.
def greet(name):
    """Return a greeting string."""
    return f"Hello {name}"
print(greet.__doc__)

Número variable de argumentos

def func(*args) recopila los argumentos posicionales adicionales en una tupla. Es útil cuando no sabe cuántos habrá.
def total(*nums):
    return sum(nums)
print(total(1,2,3,4))

Las funciones son objetos

Las funciones son objetos de primera clase. Puede asignarlas a variables, pasarlas como argumentos o almacenarlas en listas.
def double(x): return x * 2
fn = double
print(fn(5))

Llamadas con desempaquetado

args = [1,2]; f(*args) desempaqueta una lista como argumentos posicionales. d = {'a':1}; f(**d) desempaqueta un dict como argumentos con nombre.
def add(a, b): return a + b
args = [3, 4]
print(add(*args))

Funciones lambda

lambda x: x*2 es una función anónima de una sola línea. Úsela para callbacks breves; para cualquier caso complejo, prefiera funciones con nombre.
double = lambda x: x * 2
print(double(5))
print(list(map(lambda x: x**2, [1,2,3])))

Funciones anidadas

Las funciones pueden definirse dentro de otras funciones. La función interna tiene acceso a las variables locales de la función externa; esto es un cierre (closure).
def outer(x):
    def inner(y):
        return x + y
    return inner
add5 = outer(5)
print(add5(3))

Comprobación rápida

¿Qué devuelve una función si no tiene una sentencia return explícita?

Resumen

Funciones: def name(args): body. return envía valores de vuelta. Los retornos múltiples se realizan mediante una tupla. Use lambdas para expresiones sencillas de una línea. Las funciones son objetos de primera clase.

Siga avanzando

¡Excelente trabajo! Pase a la siguiente lección para seguir progresando.

Preguntas frecuentes

¿La lección «Definición y llamada de funciones» es gratis?

Sí — el texto completo de «Definición y llamada de funciones» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python Academy, actualiza a CoddyKit PRO. El curso de Python Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Definición y llamada de funciones»?

Cree funciones con def y llámelas con argumentos. Practicas Python Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Python Academy?

No se requiere experiencia previa. Python Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Definición y llamada de funciones»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Python Academy?

Sí. Cada lección de Python Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Definición y llamada de funciones
  2. Argumentos predeterminados y con nombre
  3. args y kwargs
  4. Valores devueltos y ámbito
← Volver a Python Academy