Cuando creamos nuestros propios programas nos damos cuenta a que tienden a repetirse o presentarse de forma parecida con algunas variaciones, ahí es cuando surge la necesidad de agrupar ese bloque de código en común y aparecen las funciones.
Una función es un bloque de código organizado y que podemos reutilizar múltiples veces gracias a un nombre único que las identifica, para comunicarse con el proceso principal las funciones pueden recibir y devolver datos.
Para definir una función en Python se tienen que seguir las siguientes reglas:
Los bloques de funciones comienzan con la palabra clave def seguida del nombre de la función y los paréntesis (()).
Cualquier parámetro o argumento de entrada debe colocarse dentro de los paréntesis, también se pueden definir parámetros dentro de los paréntesis.
El bloque de código dentro de cada función comienza con dos puntos (:) y la identación.
La declaración return [expresión] devuelve una expresión donde se invocó la función, también una declaración puede estar sin argumento, que es lo equivalente a devolver none.
La estructura de una función es la siguiente:
def nombredelafuncion():
accion
accion
accion
return expresión
Por ejemplo:
def saludo():
print("Hola entusiastas de la programacion\n")
La función no es ejecutada mientras no sea invocada. Para invocar una función, simplemente se la llama por su nombre:
Input
def saludo():
print("Hola entusiastas de la programacion\n")
saludo()
print("Fin del programa")
Output
Hola entusiastas de la programación
Fin del programa
Para retornar datos, se pueden ser asignar a una variable o simplemente imprimir la función.
Por ejemplo:
Input
def saludo():
return "Hola entusiastas de la programacion"
frase = saludo()
print()
print(frase)
print("\nFin del programa")
Output
Hola entusiastas de la programacion
Fin del programa
En este ejemplo, le asignamos el valor que nos regresa la función saludo a la variable frase y luego la imprimimos, otra forma seria haciendo el llamado de la función dentro del print, así print(saludo()).
Un parámetro es el valor que la función espera recibir cuando es invocada, con el fin de ejecutar acciones sobre este valor. Una función puede esperar uno o más parámetros, los cuales van separados por coma.
La estructura es la siguiente:
def nombredelafuncion(parametro1, parametro2, etc):
accion
accion
accion
return expresión
Por ejemplo:
Input
def mi_funcion(user, nombre):
datos = (user, nombre)
print (datos)
user = input("Cual es tu user en steemit: ")
nombre = input("Cual es tu nombre: ")
mi_funcion(user,nombre)
Output
Cual es tu user en steemit: vidayaventura
Cual es tu nombre: Ramses
('vidayaventura', 'Ramses')
Estudiemos el ejemplo:
tupla y luego se muestran por pantalla.¿Complicado? Puede ser, pero no hay nada que nos pueda ayudar más que practicar y practicar, la programación se basa en lo que lo llamo "Horas Nalgas" (Muchas horas sentado programando).
Al llamar a una función, siempre se le deben pasar sus argumentos en el mismo orden en el que los espera.
Veamos otro ejemplo:
Input
print("Programa que realiza la suma de dos numeros")
def suma(num1, num2):
return num1 + num2
num1 = int(input("Dame el valor del primero numero: "))
num2 = int(input("Dame el valor del segundo numero: "))
resultado = suma(num1, num2)
print("El resultado de la suma es: ",resultado)
Output
Programa que realiza la suma de dos numeros
Dame el valor del primero numero: 30
Dame el valor del segundo numero: 48
El resultado de la suma es: 78
Te invito a que estudies este ejemplo por tu cuenta, solo tienes que repasar lo que hemos estado hablando a lo largo del post.
Existe la posibilidad de que nuestra función espere recibir un número desconocido de argumentos, estos llegarán a la función en forma de tupla. Para definir argumentos arbitrarios en una función, se debe colocar delante del parámetro un asterisco (*):
La estructura es la siguiente:
def nombredelafuncion(parametros,*argumentos):
accion
return expresión
Por ejemplo:
Input
def parametros_arbitrarios(parametro, *arbitrarios):
print (parametro)
print()
# Los parámetros arbitrarios se corren como tuplas
for argumento in arbitrarios:
print (argumento)
parametros_arbitrarios('Ramses', 'vidayaventura', 'andrealbm', 'ricardo993')
print("\nFin del programa")
Output
Ramses
vidayaventura
andrealbm
ricardo993
Fin del programa
Repasemos el ejemplo, el primer argumento que se envía será el parámetro fijo en este caso Ramses, el resto será argumentos arbitrarios, que pueden ser n cantidad.Imprimimos por pantalla el parámetro fijo y luego con un bucle for imprimimos los argumentos arbitrarios, que son almacenados en forma de tuplas.
Gracias por permitirme robar unos pocos minutos de tu vida. Me despido por los momentos mis lectores, que tengan un excelente día, tarde o noche.
╭════════════╮
Sígueme en mi Blog
╰════════════╯