Ejemplos de funciones de Python:llamada, sangría, argumentos y valores devueltos
¿Qué es la función en Python?
Una Función en Python es un fragmento de código que se ejecuta cuando se hace referencia a él. Se utiliza para utilizar el código en más de un lugar en un programa. También se le llama método o procedimiento. Python proporciona muchas funciones integradas como print(), input(), compile(), exec(), etc. pero también da libertad para crear sus propias funciones.
En este tutorial, aprenderemos
- Cómo definir y llamar a una función en Python
- Importancia de la sangría (espacio) en Python
- ¿Cómo devuelve el valor la función?
- Argumentos en Funciones
Cómo definir y llamar a una función en Python
La función en Python está definida por "def" instrucción seguida del nombre de la función y paréntesis ( () )
Ejemplo:
Definamos una función usando el comando "def func1():" y llamemos a la función. El resultado de la función será “Estoy aprendiendo la función de Python”.
La función imprimir func1() llama a nuestro def func1():e imprime el comando ” Estoy aprendiendo la función de Python Ninguna. ”
Hay un conjunto de reglas en Python para definir una función.
- Cualquier argumento o parámetro de entrada debe colocarse entre estos paréntesis
- La primera declaración de la función puede ser una declaración opcional:cadena de documentación o la cadena de documentación de la función
- El código dentro de cada función comienza con dos puntos (:) y debe estar sangrado (espacio)
- La instrucción return (expresión) sale de una función y opcionalmente devuelve un valor a la persona que llama. Una declaración de devolución sin argumentos es lo mismo que devolver Ninguno.
Importancia de la sangría (espacio) en Python
Antes de familiarizarnos con las funciones de Python, es importante que entendamos la regla de sangría para declarar funciones de Python y estas reglas se aplican a otros elementos de Python, así como a la declaración de condiciones, bucles o variables.
Python sigue un estilo particular de sangría para definir el código, ya que las funciones de Python no tienen un comienzo o final explícito como llaves para indicar el inicio y la finalización de la función, tienen que confiar en esta sangría . Aquí tomamos un ejemplo simple con el comando "imprimir". Cuando escribimos la función "imprimir" justo debajo de la función def 1 ():Mostrará un "error de sangría:se esperaba un bloque sangrado “.
Ahora, cuando agregue la sangría (espacio) delante de la función "imprimir", debería imprimirse como se esperaba.
Al menos, una sangría es suficiente para que su código funcione correctamente. Pero como mejor práctica, es recomendable dejar una sangría de 3 a 4 para llamar a su función .
También es necesario que al declarar la sangría, debe mantener la misma sangría para el resto de su código . Por ejemplo, en la captura de pantalla a continuación, cuando llamamos a otra declaración "todavía en func1" y cuando no se declara justo debajo de la primera declaración de impresión, mostrará un error de sangría "unindent no coincide con ningún otro nivel de sangría".
Ahora, cuando aplicamos la misma sangría para ambas declaraciones y las alineamos en la misma línea, se obtiene el resultado esperado.
¿Cómo devuelve el valor la función?
El comando de devolución en Python especifica qué valor devolver a la persona que llama a la función.
Entendamos esto con el siguiente ejemplo
Paso 1) Aquí, vemos cuando la función no es "retorno". Por ejemplo, queremos el cuadrado de 4, y debería dar como respuesta "16" cuando se ejecuta el código. Lo que da cuando simplemente usamos el código "imprimir x * x", pero cuando llama a la función "imprimir cuadrado", da "Ninguno" como salida. Esto se debe a que cuando llama a la función, la recursión no ocurre y se cae al final de la función. Python devuelve "Ninguno" por fallar al final de la función.
Paso 2) Para aclarar esto, reemplazamos el comando de impresión con el comando de asignación. Revisemos la salida.
Cuando ejecuta el comando "imprimir cuadrado (4)", en realidad devuelve el valor del objeto, ya que no tenemos ninguna función específica para ejecutar aquí, devuelve "Ninguno".
Paso 3) Ahora, aquí veremos cómo recuperar la salida usando el comando "return". Cuando use la función "return" y ejecute el código, dará como resultado "16".
Paso 4) Las funciones en Python son en sí mismas un objeto, y un objeto tiene algún valor. Aquí veremos cómo Python trata un objeto. Cuando ejecuta el comando "imprimir cuadrado", devuelve el valor del objeto. Como no hemos pasado ningún argumento, no tenemos ninguna función específica para ejecutar aquí, devuelve un valor predeterminado (0x021B2D30) que es la ubicación del objeto. En el programa práctico de Python, probablemente nunca necesitará hacer esto.
Argumentos en funciones
El argumento es un valor que se pasa a la función cuando se llama.
En otras palabras, en el lado de la llamada, es un argumento y en el lado de la función es un parámetro.
Veamos cómo funciona Python Args –
Paso 1) Los argumentos se declaran en la definición de la función. Mientras llama a la función, puede pasar los valores para esos argumentos como se muestra a continuación
Paso 2) Para declarar un valor predeterminado de un argumento, asígnele un valor en la definición de la función.
Ejemplo:x no tiene valores predeterminados. Valores predeterminados de y=0. Cuando proporcionamos solo un argumento al llamar a la función de multiplicación, Python asigna el valor proporcionado a x mientras mantiene el valor de y=0. Por lo tanto, la multiplicación de x*y=0
Paso 3) Esta vez cambiaremos el valor a y=2 en lugar del valor predeterminado y=0, y devolverá la salida como (4×2)=8.
Paso 4) También puede cambiar el orden en que se pueden pasar los argumentos en Python. Aquí hemos invertido el orden del valor x e y a x=4 e y=2.
Paso 5) También se pueden pasar múltiples argumentos como una matriz. Aquí, en el ejemplo, llamamos a los argumentos múltiples (1,2,3,4,5) llamando a la función (*args).
Ejemplo:declaramos varios argumentos como número (1,2,3,4,5) cuando llamamos a la función (*args); imprime la salida como (1,2,3,4,5)
Consejos :
- En Python 2.7. sobrecarga de funciones no es compatible con Python. La sobrecarga de funciones es la capacidad de crear múltiples métodos del mismo nombre con una implementación diferente. La sobrecarga de funciones es totalmente compatible con Python 3
- Hay bastante confusión entre métodos y funciones. Los métodos en Python están asociados con instancias de objetos mientras que la función no lo está. Cuando Python llama a un método, vincula el primer parámetro de esa llamada a la referencia de objeto adecuada. En palabras simples, una función independiente en Python es una "función", mientras que una función que es un atributo de una clase o una instancia es un "método".
Aquí está el código completo de Python 3
#define a function def func1(): print ("I am learning Python function") print ("still in func1") func1() def square(x): return x*x print(square(4)) def multiply(x,y=0): print("value of x=",x) print("value of y=",y) return x*y print(multiply(y=2,x=4))
Aquí está el código completo de Python 2
#define a function def func1(): print " I am learning Python function" print " still in func1" func1() def square(x): return x*x print square(4) def multiply(x,y=0): print"value of x=",x print"value of y=",y return x*y print multiply(y=2,x=4)
Resumen:
La función en Python es una pieza de código reutilizable que se utiliza para realizar una sola acción relacionada. En este artículo, veremos
- Función definida por def declaración
- El bloque de código dentro de cada función comienza con dos puntos (:) y debe estar sangrado (espacio)
- Cualquier argumento o parámetro de entrada debe colocarse entre estos paréntesis, etc.
- Se debe dejar al menos una sangría antes del código después de declarar la función
- Se debe mantener el mismo estilo de sangría en todo el código dentro de la función def
- Para las mejores prácticas, tres o cuatro guiones se consideran mejores antes de la declaración
- Puede usar el comando "return" para devolver valores a la llamada de función.
- Python imprimirá un valor aleatorio como (0x021B2D30) cuando el argumento no se proporcione a la función de llamada. Ejemplo de "función de impresión".
- En el lado de la llamada, es un argumento y en el lado de la función es un parámetro
- Valor predeterminado en el argumento:cuando proporcionamos solo un argumento al llamar a la función de multiplicación o cualquier otra función, Python asigna el otro argumento de forma predeterminada
- Python también le permite invertir el orden del argumento
python
- Declaración, sangría y comentarios de Python
- Argumentos de la función de Python
- Python Anónimo/Función Lambda
- Generadores de Python
- Cierres Python
- Decoradores de pitón
- Funciones de C++ con ejemplos de programas
- Funciones Python Lambda con EJEMPLOS
- Función Python abs():Ejemplos de valores absolutos
- Función Python round() con EJEMPLOS
- Python range() Función:Flotante, Lista, Para ejemplos de bucle