Una función nos permite crear un conjunto de instrucciones que podemos ejecutar cuando sea necesario.
Las funciones son esenciales enPythony en muchos otros lenguajes de programación para crear programas significativos, porque nos permiten descomponer un programa en partes manejables, promueven la legibilidad y la reutilización del código.
Aquí hay una función de ejemplo llamadahello
que imprime "¡Hola!":
def hello():
print('Hello!')
Esta es la funciondefinición. Hay un nombrehello
) y un cuerpo, el conjunto de instrucciones, que es la parte que sigue a los dos puntos y tiene sangría en un nivel a la derecha.
Para ejecutar esta función, debemos llamarla. Esta es la sintaxis para llamar a la función:
hello()
Podemos ejecutar esta función una o varias veces.
El nombre de la función,hello
, es muy importante. Debe ser descriptivo, de modo que cualquiera que lo llame pueda imaginar lo que hace la función.
Una función puede aceptar uno o más parámetros:
def hello(name):
print('Hello ' + name + '!')
En este caso llamamos a la función pasando el argumento
hello('Roger')
Llamamosparámetroslos valores aceptados por la función dentro de la definición de función, yargumentoslos valores que pasamos a la función cuando la llamamos. Es común confundirse con esta distinción.
Un argumento puede tener un valor predeterminado que se aplica si no se especifica el argumento:
def hello(name='my friend'):
print('Hello ' + name + '!')
hello()
#Hello my friend!
Así es como podemos aceptar varios parámetros:
def hello(name, age):
print('Hello ' + name + ', you are ' + str(age) + ' years old!')
En este caso llamamos a la función pasando un conjunto de argumentos:
hello('Roger', 8)
Los parámetros se pasan por referencia. Todos los tipos en Python son objetos, pero algunos de ellos son inmutables, incluidos enteros, booleanos, flotantes, cadenas y tuplas. Esto significa que si los pasa como parámetros y modifica su valor dentro de la función, el nuevo valor no se refleja fuera de la función:
def change(value):
value = 2
val = 1
change(val)
print(val) #1
Si pasa un objeto que no es inmutable y cambia una de sus propiedades, el cambio se reflejará en el exterior.
Una función puede devolver un valor, usando elreturn
declaración. Por ejemplo, en este caso devolvemos elname
nombre del parámetro:
def hello(name):
print('Hello ' + name + '!')
return name
Cuando la función cumple conreturn
declaración, la función termina.
Podemos omitir el valor:
def hello(name):
print('Hello ' + name + '!')
return
Podemos tener la declaración de retorno dentro de un condicional, que es una forma común de finalizar una función si no se cumple una condición inicial:
def hello(name):
if not name:
return
print('Hello ' + name + '!')
Si llamamos a la función pasando un valor que se evalúa comoFalse
, como una cadena vacía, la función se termina antes de alcanzar elprint()
declaración.
Puede devolver varios valores utilizando valores separados por comas:
def hello(name):
print('Hello ' + name + '!')
return name, 'Roger', 8
En este caso llamandohello('Syd')
el valor de retorno es una tupla que contiene esos 3 valores:('Syd', 'Roger', 8)
.
Más tutoriales de Python:
- Introducción a Python
- Instalación de Python 3 en macOS
- Ejecutar programas de Python
- Python 2 frente a Python 3
- Los fundamentos de trabajar con Python
- Tipos de datos de Python
- Operadores de Python
- Cadenas de Python
- Booleanos de Python
- Números de Python
- Python, aceptando entrada
- Declaraciones de control de Python
- Listas de Python
- Tuplas de Python
- Conjuntos de Python
- Diccionarios de Python
- Funciones de Python
- Objetos de Python
- Bucles de Python
- Módulos de Python
- Clases de Python
- La biblioteca estándar de Python
- Depurar Python
- Alcance de las variables de Python
- Python, acepta argumentos desde la línea de comandos
- Recursión de Python
- Funciones anidadas de Python
- Funciones de Python Lambda
- Cierres de Python
- Entornos virtuales de Python
- Usa una GoPro como cámara web remota usando Python
- Python, como crear una lista a partir de una cadena
- Decoradores de Python
- Cadenas de documentos de Python
- Introspección de Python
- Anotaciones de Python
- Python, cómo enumerar archivos y carpetas en un directorio
- Python, como comprobar si un número es par o impar
- Python, cómo obtener los detalles de un archivo
- Python, como comprobar si existe un archivo o directorio
- Excepciones de Python
- Python, como crear un directorio
- Python, como crear un archivo vacío
- Python, la declaración `with`
- Python, crea una solicitud de red
- Python, instalando paquetes de terceros usando `pip`
- Python, lee el contenido de un archivo