- Parámetros en funciones que ya conocemos
- Definir nuestra propia función con parámetro
- Parámetros son Obligatorios
- Funciones con Múltiples Parámetros
Las funciones en Python no solo pueden devolver valores, sino que también pueden recibir parámetros. Esto significa que podemos hacer que una función trabaje con diferentes valores sin necesidad de escribir varias versiones de la misma.
Parámetros en funciones que ya conocemos
Seguro ya has usado funciones que aceptan parámetros sin darte cuenta.
⏬ Mira estos ejemplos:
# La función print() acepta un solo parámetro de cualquier tipo
print('Soy un parámetro')
# El método replace() acepta dos parámetros tipo string:
# El primero es lo que buscamos, el segundo es por qué se reemplaza
'google'.replace('go', 'mo') # Resultado: 'moogle'
# La función round() trabaja con números:
# El primer parámetro es el número que queremos redondear
# El segundo es la cantidad de decimales
round(10.23456, 3) # Resultado: 10.235
Cada una de estas funciones necesita que le pasemos información adicional para poder funcionar correctamente.
Definir nuestra propia función con parámetro
Imaginemos que necesitamos crear una función llamada get_last_char(), que reciba un texto y devuelva su último carácter.
⏬ Ejemplo de cómo queremos que funcione:
get_last_char("Códica") # a
get_last_char("Goo") # o
Para que esto funcione, sabemos que:
- Debemos definir la función
get_last_char(). - La función debe aceptar un parámetro tipo
string. - La función debe devolver el último carácter del texto.
Implementación
Así se define nuestra función:
def get_last_char(text):
return text[-1]
Explicación:
- La palabra clave
defindica que estamos definiendo una función. textes el parámetro que recibirá la función (puede tener cualquier nombre, pero debe ser descriptivo).- Dentro del cuerpo de la función, usamos
text[-1]para obtener el último carácter y lo devolvemos conreturn.
Ahora probemos:
get_last_char('Códica') # a
get_last_char('code') # e
Si pasamos una variable como argumento, funciona igual:
texto = 'Winter is coming'
get_last_char(texto) # g
Parámetros son Obligatorios
get_last_char()
# TypeError: get_last_char() missing 1 required positional argument: 'text'
Funciones con Múltiples Parámetros
Algunas funciones necesitan más de un parámetro. Por ejemplo round():
round(10.23456, 3) # 10.235
El método replace() también usa dos parámetros:
'google'.replace('go', 'mo') # moogle
Si nosotros quisiéramos definir una función parecida a replace(), lo haríamos así:
def replace(text, from_, to):
return text.replace(from_, to)
replace('google', 'go', 'mo') # moogle
Aquí hemos definido replace(text, from_, to), donde:
textes la cadena en la que se hará el cambio.from_es el texto a buscar.toes el texto por el que se reemplazará.
Este detalle es importante: el orden de los parámetros importa. Si pasamos los parámetros en un orden incorrecto, no obtendremos el resultado esperado:
replace('google', 'mo', 'go') # google (no hace nada porque 'mo' no está en 'google')
Resumen
- Los parámetros permiten que las funciones trabajen con valores dinámicos.
- Debes pasar todos los parámetros requeridos, de lo contrario, Python generará un error.
- Puedes definir funciones con varios parámetros separados por comas.
- El orden de los parámetros es importante, cambiarlo puede alterar el resultado.
- Usar buenos nombres de parámetros hace que las funciones sean más comprensibles.
Ahora ya puedes crear funciones más flexibles y reutilizables. ¡A practicar!
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.