Tutorial de Python - Función

Jinku Hu 30 enero 2023
  1. ¿Qué es la función de Python?
  2. Cómo definir una función Python
  3. Ejemplo de función de Python
  4. Llamar una función en Python
  5. La sentencia return
  6. Alcance y vida útil de las variables de Python
  7. Tipos de funciones
Tutorial de Python - Función

En esta sección, aprenderá

  • Qué es una función
  • Cómo crear una función
  • Tipos de funciones

¿Qué es la función de Python?

Una función es un pequeño bloque de un programa que contiene un número de sentencias para realizar una tarea específica. Cuando se tiene un programa de miles de líneas realizando diferentes tareas, se debe dividir el programa en pequeños módulos (bloques), lo que aumenta la legibilidad y reduce la complejidad.

Cómo definir una función Python

La siguiente es la sintaxis para definir una función:

def functionName(arguments):
    """This is the definition of this function"""
    statements
    return returnParam
  1. La palabra clave def se utiliza para definir una función.
  2. functionName es el nombre de la función.
  3. Los arguments son opcionales. Los argumentos proporcionan valores a la función para realizar operaciones sobre ella.
  4. Los dos puntos (:) terminan la cabecera de la función.
  5. """This is the definition of this function""" es una docstring y es opcional que describe lo que hace la función.
  6. statements se refiere al cuerpo de la función.
  7. La sentencia return devuelve opcionalmente el resultado a la persona que llama.

Ejemplo de función de Python

def language(p):
    """Function to print a message"""
    print("Programming language:", p)

Aquí se define una función language que tiene un argumento p que pasa del llamador. Dentro de la función, hay una cadena de documentos y una sentencia print para imprimir el mensaje que contiene el argumento p.

Llamar una función en Python

Se puede llamar a una función desde cualquier parte del programa. Una función puede ser llamada por su nombre con los parámetros requeridos.

language("Python")
Programming language: Python

La sentencia return

La sentencia return transfiere el control de vuelta a los códigos donde se llama la función.
Indica el final de la definición de la función.

La sintaxis de return es la siguiente:

return [values_to_be_returned]

Si no hay ninguna sentencia return en una función, se devolverá un objeto None.

Ejemplo de uso de la sentencia return

def square(n):
    return n * n


print("Square of 4=", square(4))
Square of 4=16

En este código, la función es llamada en una función print y se le pasa 4 como argumento. Dentro de la función, tienes una expresión n*n que se evalúa y el resultado se devuelve donde se llama a la función (sentencia print).

Alcance y vida útil de las variables de Python

El alcance de una variable es donde se puede acceder a una variable. Cuando una variable se declara dentro de una función, no es accesible para el exterior de esa función. Este tipo de variables se denomina variable local y se accede sólo a la función donde se declara.

La vida útil de una variable es el tiempo durante el cual una variable existe en la memoria. Cuando se declara una variable dentro de una función, la memoria de la misma se liberará cuando el control salga de la función.

Ver el ejemplo a continuación:

def fun():
    a = 12
    print("Value of a inside function:", a)


a = 24
fun()
print("Value of a outside function:", a)
Value of a inside function: 12
Value of a outside function: 24

En este código, la variable a dentro de la función y la variable a fuera de la función son variables diferentes.

Si intentas acceder a las variables declaradas dentro de las funciones desde fuera, te encontrarás con un error - NameError name 'x' is not defined. Pero las variables declaradas fuera de las funciones tienen un alcance global y se puede acceder a ellas desde dentro.

Tipos de funciones

Las funciones en Python se pueden clasificar en dos tipos:

  1. Funciones incorporadas: tienen un significado predefinido y realizan tareas específicas.
  2. Funciones definidas por el usuario: son definidas por el usuario y contienen cualquier número de instrucciones para realizar tareas definidas por el usuario.
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook