CodeGym /Cursos /Python SELF ES /Funciones en Python

Funciones en Python

Python SELF ES
Nivel 6 , Lección 1
Disponible

7.1 Creación de funciones

En Python, la creación de funciones es un aspecto fundamental de la programación, permitiendo que el código sea más modular, reutilizable y legible. Las funciones en Python se definen usando la palabra clave def, seguida del nombre de la función y paréntesis con parámetros.

Siempre puedes pensar en una función como un conjunto de comandos que se han agrupado y a los que se les ha dado un nombre a ese grupo. La estructura general de declaración de función tiene el siguiente aspecto:


def nombre(parámetros):
    comando1
    comando2
    comandoN

Una función simple en Python podría verse así:


def greet():
    print("Hello, World!")

La llamada a la función se realiza escribiendo su nombre con paréntesis:


greet()  # Imprimirá: Hello, World!

Llamar a una función equivale a escribir su código interno en el lugar de la llamada. En lugar de escribir el mismo código una y otra vez, se puede extraer en bloques separados y darles un nombre.

7.2 Paso de argumentos a la función

Trabajar con funciones no sería tan interesante si siempre hicieran lo mismo, simplemente un bloque de comandos con nombre y ya. En lugar de eso, se les ocurren parámetros de inmediato, variables a través de las cuales se pueden pasar diferentes valores a la función.

Las variables dentro de las funciones se llaman parámetros de la función. Y los valores que se les pasan en una llamada específica son los argumentos de la función. Los parámetros de la función simplemente reciben los valores de los argumentos.


def greet(name):
    print("Hello,", name)
        
greet("Alice")  # Imprimirá: Hello, Alice!

Ejemplo de una función con dos argumentos:


def print_sum(a, b):
    print(f"Suma de {a} y {b} es {a + b}")
        
print_sum(10, 15)  # Imprimirá: Suma de 10 y 15 es 25

Y, por supuesto, como argumentos se pueden pasar expresiones completas:


def print_sum(a, b):
    print(f"Suma de {a} y {b} es {a + b}")
        
print_sum(10*10-123, 15//2)  # Imprimirá: Suma de -23 y 7 es -16

¡Útil! Para los fans de C/C++ — todas las variables en Python son referencias desde el punto de vista de C++. También los parámetros de la función. Al asignar, el valor nunca se copia o duplica, siempre se asigna solo la referencia.

7.3 La función es un objeto

En Python, las funciones son objetos de primera clase, lo que significa que pueden usarse como cualquier otro objeto. Esto proporciona a los desarrolladores un conjunto de herramientas poderoso para crear soluciones de software flexibles.

Funciones como objetos

Como objetos de primera clase, las funciones en Python pueden ser:

  • Asignadas a una variable
  • Pasadas como argumentos a otras funciones
  • Devueltas desde otras funciones
  • Incluidas en estructuras de datos como listas, diccionarios

Ejemplos:


def shout(text):
    return text.upper()
        
yell = shout
        
def greet(func):
    greeting = func("Hello")  # llamada a la función
    print(greeting)
        
greet(shout)

En el futuro, tocaremos este tema nuevamente, pero por ahora recuerda que — todo en Python es un objeto. Funciones, clases, errores, listas, módulos — todo.

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION