Ventajas y Tipos de Funciones en Python
Ventajas y Tipos de Funciones en Python
Las funciones son el aspecto más importante de una aplicación. Una función puede definirse como
el bloque organizado de código reutilizable que se puede llamar siempre que sea necesario.
Python nos permite dividir un programa grande en los bloques básicos de construcción conocidos como
función. La función contiene el conjunto de declaraciones de programación encerradas entre {}. Una
la función se puede llamar múltiples veces para proporcionar reutilización y modularidad al python
programa.
Al usar funciones, podemos evitar reescribir la misma lógica/código una y otra vez en un
programa.
Podemos llamar a funciones de python cualquier número de veces en un programa y desde cualquier lugar.
lugar en un programa.
Podemos rastrear un gran programa de Python fácilmente cuando se divide en múltiples
funciones.
Llamada de función
En python, una función debe ser definida antes de la llamada a la función, de lo contrario, el python
el intérprete da un error. Una vez que la función está definida, podemos llamarla desde otra
función o el indicador de python. Para llamar a la función, usa el nombre de la función seguido de
los paréntesis.
A continuación se muestra una función simple que imprime el mensaje "Hola Mundo".
defhola_mundo():
imprimir("hola mundo")
hola_mundo()
Output:
hola mundo
Parámetros en la función
La información en las funciones se puede pasar como parámetros. Los parámetros son
especificado en los paréntesis. Podemos dar cualquier número de parámetros, pero tenemos que
sepáralos con una coma.
Considere el siguiente ejemplo que contiene una función que acepta una cadena como el
parámetro y lo imprime.
Ejemplo 1
#definiendo la función
deffunc (nombre):
print("Hola ", nombre);
#llamando a la función
func("Ayush")
Ejemplo 2
#función en python para calcular la suma de dos variables
#definiendo la función
defsum (a,b):
returna+b;
imprimiendo la suma de a y b
imprimir("Suma = ",sumar(a,b))
Sin embargo, hay una excepción en el caso de objetos mutables, ya que los cambios realizados en
los objetos mutables como las cadenas no vuelven a la cadena original, más bien, crean una nueva cadena
el objeto está hecho, y por lo tanto se imprimen los dos objetos diferentes.
#definiendo la lista
list1 = [10,30,40,50]
#llamando a la función
cambiar_lista(lista1);
print("lista fuera de la función = ",list1);
Output:
#llamando a la función
cambiar_cadena(cadena1)
Output:
Tipos de argumentos
Puede haber varios tipos de argumentos que se pueden pasar en el momento de la función
llamando.
1. Argumentos requeridos
2. Argumentos de palabras clave
3. Argumentos predeterminados
Argumentos Requeridos
Example 1
deffunc(nombre):
message ="Hi "+name;
returnmessage;
name = input("Enter the name?")
imprimir(func(nombre))
Output:
Ingrese el nombre?John
Hola John
Ejemplo 2
la función calcular devuelve la suma de dos argumentos a y b
defcalcular(a,b):
returna+b
calcular(10)# esto causa un error ya que falta un argumento requerido b.
Output:
Python nos permite llamar a la función con los argumentos de palabra clave. Este tipo de función
la llamada nos permitirá pasar los argumentos en el orden aleatorio.
El nombre de los argumentos se trata como las palabras clave y se coincide en la función
llamada y definición. Si se encuentra la misma coincidencia, los valores de los argumentos son
copiado en la definición de la función.
Ejemplo 1
#la función func se llama con el nombre y el mensaje como argumentos de palabra clave
defunc(nombre,mensaje):
imprimir("imprimiendo el mensaje con", nombre, "y", mensaje)
func(name ="John",message="hello")#name and message is copied with the values Jo
hn and hello respectively
Output:
Output:
Ejemplo 3
La función simple_interest(p, t, r) se llama con los argumentos por palabra clave.
definteres_simple(p,t,r):
return(p*t*r)/100
Output:
El python nos permite proporcionar la mezcla de los argumentos requeridos y palabras clave.
argumentos en el momento de la llamada a la función. Sin embargo, el argumento requerido no debe ser
dado después del argumento de palabra clave, es decir, una vez que se encuentra el argumento de palabra clave en
en la llamada de la función, los siguientes argumentos también deben ser los argumentos por palabra clave.
Ejemplo 4
deffunc(name1,message,name2):
imprimir("imprimiendo el mensaje con", name1, ",", mensaje, ",y", name2)
func("John", mensaje="hola", nombre2="David")#el primer argumento no es el argumento clave
gumento
Output:
El siguiente ejemplo provocará un error debido a una mezcla inapropiada de palabras clave y
argumentos requeridos que se pasan en la llamada a la función.
Ejemplo 5
deffunc(nombre1,mensaje,nombre2):
imprimir("imprimiendo el mensaje con",name1," , ",mensaje," , y",name2)
func("John", mensaje="hola", "David")
Output:
Argumentos predeterminados
Python nos permite inicializar los argumentos en la definición de la función. Si el valor de cualquier
si el argumento no se proporciona en el momento de la llamada a la función, entonces ese argumento puede ser
inicializado con el valor dado en la definición incluso si el argumento no se especifica en
la llamada a la función.
Ejemplo 1
def printme(nombre, edad=22):
print("Mi nombre es", name, "y tengo", age, "años")
printme(nombre = "john")#la variable edad no se pasa a la función sin embargo
el valor predeterminado de la edad se considera en la función
Output:
Ejemplo 2
defprintme(nombre, edad=22):
Output:
Sin embargo, en la definición de la función, tenemos que definir la variable con * (estrella) como
*<variable - nombre >.
Ejemplo
defprintme(*nombres):
print("el tipo de argumento pasado es ", type(names))
imprimiendo los argumentos pasados...
fornameinnames:
imprimir(nombre)
printme("john","David","smith","nick")
1. Global variables
2. Variables locales
La variable definida fuera de cualquier función se conoce como de ámbito global, mientras que el
una variable definida dentro de una función se conoce por tener un ámbito local.
Ejemplo 1
def imprimir_mensaje():
message ="hello !! I am going to print a message."# the variable message is local o th
la función en sí misma
imprimir(mensaje)
imprimir_mensaje()
imprimir(mensaje)# esto causará un error ya que una variable local no puede ser accesible aquí
e.
Ejemplo 2
def calcular(*args):
sum=0
forarginargs:
suma = suma + argumento
Output:
La suma es 60
Valor de la suma fuera de la función: 0