Definir funciones
En Python, una función es un bloque de código que realiza una tarea específica y puede ser reutilizado en diferentes partes de un programa. Las funciones se definen con la palabra clave def
, seguida por un nombre de función y un conjunto de parámetros entre paréntesis. Aquí está la sintaxis básica de cómo se define y se usa una función en Python:
def nombre_de_funcion(parametro1, parametro2, ...):
# Cuerpo de la función
# (código que realiza una tarea específica)
return resultado
nombre_de_funcion
: Es el nombre que le das a la función.parametro1
,parametro2
, …: Son los parámetros que la función acepta como entrada. Puedes tener cero o más parámetros, separados por comas.resultado
: Es el valor que la función puede devolver como resultado. Puede ser opcional; si no se especifica, la función devuelveNone
.
A continuación, se presentan ejemplos de diferentes tipos de parámetros en Python:
Ejemplo 1: Parámetros posicionales
Los parámetros posicionales son los más comunes. Se pasan a la función en el orden en que se definen.
def saludar(nombre):
return f"Hola, {nombre}!"
mensaje = saludar("Juan")
print(mensaje) # Salida: "Hola, Juan!"
Ejemplo 2: Parámetros con valor predeterminado
Puedes asignar un valor predeterminado a un parámetro. Si no se proporciona un valor al llamar a la función, se usará el valor predeterminado.
def saludar(nombre="Invitado"):
return f"Hola, {nombre}!"
mensaje1 = saludar("Juan")
mensaje2 = saludar() # Si no se proporciona nombre, se utiliza el valor predeterminado
print(mensaje1) # Salida: "Hola, Juan!"
print(mensaje2) # Salida: "Hola, Invitado!"
Ejemplo 3: Parámetros por palabra clave
Puedes pasar argumentos a la función utilizando palabras clave para identificar qué parámetro se está asignando.
def calcular_precio(total, descuento):
return total - descuento
precio_final = calcular_precio(total=100, descuento=20)
print(precio_final) # Salida: 80
Ejemplo 4: Parámetros arbitrarios (*args y kwargs)**
Puedes definir funciones con un número variable de parámetros utilizando *args
(para argumentos posicionales) y **kwargs
(para argumentos por palabra clave).
def suma_numeros(*args):
resultado = 0
for num in args:
resultado += num
return resultado
total = suma_numeros(1, 2, 3, 4, 5)
print(total) # Salida: 15
def imprimir_datos(**kwargs):
for clave, valor in kwargs.items():
print(f"{clave}: {valor}")
imprimir_datos(nombre="Juan", edad=30, ciudad="Madrid")
# Salida:
# nombre: Juan
# edad: 30
# ciudad: Madrid
En resumen, en Python, las funciones se definen con def
, pueden tener parámetros posicionales, parámetros con valores predeterminados, parámetros por palabra clave y parámetros arbitrarios. Las funciones permiten modularizar el código, mejorar la reutilización y facilitar el mantenimiento del programa.