logo

Funciones parciales en Python

Las funciones parciales nos permiten fijar una cierta cantidad de argumentos de una función y generar una nueva función. En este artículo intentaremos comprender el concepto de Funciones Parciales con diferentes ejemplos en Pitón .

¿Qué son las funciones parciales y el uso de funciones parciales en Python?

Las funciones parciales en Python son una función que se crea fijando una cierta cantidad de argumentos de otra función. Python proporciona un módulo integrado llamado herramientas funcionales que incluye una función llamada parcial que se puede utilizar para crear funciones parciales. ElpartialLa función toma un elemento invocable (generalmente otra función) y una serie de argumentos que se completarán previamente en la nueva función parcial. Esta característica es similar a enlazar en C++ .



¿Cómo se implementa una función parcial en Python?

Las funciones parciales admiten argumentos posicionales y de palabras clave para usarse como argumentos fijos.

Ejemplo 1

En este ejemplo utilizamos valores predeterminados para implementar la función parcial. Los valores predeterminados comienzan a reemplazar las variables desde la izquierda. En el ejemplo, hemos completado previamente nuestra función con algunos valores constantes de a by c. Y g() solo toma un único argumento, es decir, la variable x.



Python
from functools import partial # A normal function def f(a b c x): return 1000*a + 100*b + 10*c + x # A partial function that calls f with # a as 3 b as 1 and c as 4. g = partial(f 3 1 4) # Calling g() print(g(5)) 

Producción:

3145

Ejemplo 2

En el ejemplo, hemos utilizado valores constantes de valores predefinidos en los que hemos asignado los valores de cyb y add_part() toma un solo argumento, es decir, la variable a.



Python
from functools import * # A normal function def add(a b c): return 100 * a + 10 * b + c # A partial function with b = 1 and c = 2 add_part = partial(add c = 2 b = 1) # Calling partial function print(add_part(3)) 

Producción:

312

Usos de funciones parciales

  • Integración con Bibliotecas: Las funciones parciales se pueden usar para personalizar el comportamiento de funciones o métodos de terceros proporcionando argumentos parciales y se pueden usar para integrarlas con otras bibliotecas.
  • Simplificando las devoluciones de llamadas: Se pueden usar funciones parciales para crear controladores de devolución de llamada especializados arreglando algunos parámetros específicos de la devolución de llamada y proporcionando una interfaz más limpia para el resto del código.
  • Fijación de parámetros: : Las funciones parciales pueden resultar muy útiles cuando tenemos una función con múltiples parámetros y frecuentemente queremos usarla con algunos parámetros fijos. En lugar de pasar repetidamente esos parámetros fijos, podemos crear una función parcial y llamarla con los argumentos restantes.
  • Reducir la duplicación: Si utilizamos los mismos argumentos para una función en varios lugares, crear una función parcial con esos argumentos fijos puede ayudar a reducir la duplicación de código y los esfuerzos de mantenimiento.
  • Argumentos predeterminados: Python incorporadofunctools.partialse puede utilizar para establecer valores predeterminados para los argumentos de la función.
  • Reutilizabilidad del código: Las funciones parciales se pueden utilizar para derivar funciones especializadas de funciones generales y, por tanto, ayudarnos a reutilizar nuestro código.