¿Qué son las funciones en Python?: Guía para principiantes

| Última modificación: 14 de abril de 2025 | Tiempo de Lectura: 5 minutos

Las funciones son una parte fundamental de cualquier lenguaje de programación, y Python no es una excepción. Las funciones en Python permiten organizar y reutilizar el código de manera eficiente, proporcionando una forma estructurada de dividir un programa en bloques lógicos y autónomos. En este artículo, exploraremos qué son las funciones en Python y destacaremos cinco de las funciones más comunes utilizadas en este lenguaje versátil.

funciones en Python

¿Qué son las funciones en Python?

En programación, una función es un bloque de código que realiza una tarea específica y puede ser llamado desde otras partes del programa. Las funciones en Python se definen mediante la palabra clave def seguida del nombre de la función y paréntesis que pueden contener parámetros. Una función puede tener cero o más parámetros y puede devolver un valor utilizando la palabra clave return.

def saludar(nombre):
return "Hola, " + nombre + "!"

mensaje_saludo = saludar("Juan")
print(mensaje_saludo)

En este ejemplo, la función saludar toma un parámetro (nombre) y devuelve un mensaje de saludo personalizado.

Sintaxis para definir funciones en Python

Lo primero que debes saber sobre las funciones en Python es la sintaxis para definir dichas funciones en Python. En este caso, se utiliza la palabra clave def, seguida del nombre de la función y paréntesis. A continuación, se muestra la sintaxis básica:

def nombre_de_la_funcion(): # Bloque de código de la función

La palabra clave def indica que estamos definiendo una función, seguida del nombre de la función y paréntesis vacíos. Dentro de los paréntesis, puedes especificar los parámetros de entrada que la función aceptará. Luego, el bloque de código de la función se encuentra indentado debajo de la definición.

Función con parámetros

En Python, puedes definir funciones con parámetros de entrada, lo que le permite a la función recibir datos para su procesamiento. Aquí tienes un ejemplo de una función que toma dos números enteros como parámetros y devuelve su suma:

def suma(a, b): resultado = a + b return resultado

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

En este caso, la función suma acepta dos parámetros a y b, realiza la suma y devuelve el resultado utilizando la palabra clave return.

Devolviendo valores

Las funciones en Python pueden devolver valores utilizando la palabra clave return. Esto es útil cuando deseas obtener un resultado específico de una función. Aquí hay un ejemplo que muestra cómo una función devuelve el elemento de una lista en función de su índice:

def obtener_elemento(lista, indice): return lista[indice]

Parámetros opcionales

Python te permite definir funciones con parámetros opcionales. Puedes asignar un valor predeterminado a un parámetro, lo que significa que si no se proporciona un valor al llamar a la función, se utilizará el valor predeterminado. Veamos un ejemplo:

def saludar(nombre="usuario"): return f"Hola, {nombre}!"

En este caso, si no se proporciona un nombre al llamar a la función saludar(), se utilizará «usuario» como valor predeterminado.

Funciones con bloques de código

Las funciones en Python pueden contener bloques de código con múltiples líneas. Esto es especialmente útil cuando deseas realizar una serie de operaciones dentro de una función. Aquí tienes un ejemplo de una función que calcula la suma de los números en un rango dado:

def suma_rango(inicio, fin): suma = 0 for i in range(inicio, fin + 1): suma += i return suma

Funciones con múltiples valores de retorno

Python también te permite devolver múltiples valores desde una función. Esto se logra mediante la separación de los valores con comas en la declaración return. Por ejemplo:

def obtener_div_mod(a, b): division = a // b modulo = a % b return division, modulo

Al llamar a esta función, obtendrás dos valores de retorno: la división y el módulo de a entre b.

Funciones que aceptan elementos de un iterable

Otra característica útil de Python es la capacidad de definir funciones que aceptan elementos de un iterable, como una lista o una tupla, como argumentos. Esto te permite realizar operaciones en colecciones de datos. Aquí hay un ejemplo que suma todos los elementos de una lista:

def suma_elementos(iterable): suma = sum(iterable) return suma

Las 5 funciones en Python más comunes

1. print()

La función print() se utiliza para imprimir mensajes en la consola. Es una función esencial para la depuración y la visualización de resultados.

print("¡Hola, mundo!")

2. len()

La función len() devuelve la longitud de un objeto, como una cadena, lista o tupla. Es útil para determinar el número de elementos en una estructura de datos.

nombre = "Python"
longitud = len(nombre)
print("La longitud de la cadena es:", longitud)

3. input()

La función input() se utiliza para obtener la entrada del usuario desde la consola. Permite que el programa interactúe dinámicamente con el usuario.

nombre_usuario = input("Ingrese su nombre: ")
print("Hola, " + nombre_usuario + "!")

4. range()

La función range() genera una secuencia de números dentro de un rango especificado. Es comúnmente utilizada en bucles for.

for numero in range(1, 5):
print(numero)

5. Funciones personalizadas

Además de las funciones incorporadas, los programadores pueden crear sus propias funciones personalizadas para realizar tareas específicas. A continuación, se presenta un ejemplo de una función personalizada que suma dos números.

def suma(a, b):
return a + b

resultado = suma(3, 5)
print("La suma es:", resultado)

Funciones avanzadas en Python

1. Decoradores en funciones

Los decoradores son una forma de modificar el comportamiento de una función. Se utilizan para añadir funcionalidades adicionales a las funciones existentes de manera concisa y legible.

def decorador(func):
def nueva_funcion(*args, *kwargs):

print("Función decorada")
return func(args, **kwargs)
return nueva_funcion

@decorador
def funcion_original():
print("Función original")

funcion_original()

2. Funciones Lambda

Las funciones lambda son funciones anónimas y pequeñas que se definen usando la palabra clave lambda. Son útiles para operaciones rápidas y sencillas.

suma = lambda x, y: x + y
print(suma(3, 5))

3. Ámbito y alcance de las variables

Es crucial entender el alcance de las variables en Python, que puede ser local o global.

def funcion():
global variable_global
variable_global = "Modificada"
variable_local = "Local"
print(variable_local)

variable_global = "Global"
funcion()
print(variable_global)

4. Funciones recursivas

Las funciones recursivas se llaman a sí mismas y son útiles para problemas que se pueden descomponer en subproblemas más pequeños.

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

print(factorial(5))

5. Funciones anidadas y cierres (Closures)

Las funciones anidadas son funciones definidas dentro de otras funciones. Los cierres permiten que una función interna recuerde las variables de su función externa.

def funcion_externa(mensaje):
def funcion_interna():
print(mensaje)
return funcion_interna

nueva_funcion = funcion_externa("Hola desde el cierre")
nueva_funcion()

6. Documentación de funciones

Documentar funciones es esencial para mantener el código claro y comprensible. Los docstrings se utilizan para este propósito.

def suma(a, b):
"""Devuelve la suma de a y b."""
return a + b

print(suma.doc)

Las funciones en Python son herramientas poderosas que permiten escribir código modular y mantener la claridad y la organización. Al comprender cómo funcionan las funciones y cómo implementarlas, los programadores pueden escribir programas más eficientes y fáciles de mantener. Además de las funciones mencionadas, Python ofrece una amplia variedad de funciones incorporadas y la capacidad de definir funciones personalizadas para satisfacer las necesidades específicas de cualquier proyecto.

Si quieres seguir aprendiendo sobre las funciones en Python, con nuestro Bootcamp de Programación desde Cero dominarás el pensamiento computacional mientras te inicias en las metodologías y claves para escribir un código útil, rápido y elegante. ¡Pide más información ya mismo y atrévete a transformar tu futuro con KeepCoding!

¡CONVOCATORIA ABIERTA!

Aprende a Programar desde Cero

Full Stack Jr. Bootcamp

Clases en Directo | Acceso a +600 empresas | 98,51% empleabilidad

KeepCoding Bootcamps
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.