Python Language partiel


Exemple

La fonction partial crée une application de fonction partielle à partir d'une autre fonction. Il est utilisé pour lier des valeurs à certains des arguments de la fonction (ou des arguments de mots-clés) et produire un appelable sans les arguments déjà définis.

>>> from functools import partial
>>> unhex = partial(int, base=16)
>>> unhex.__doc__ = 'Convert base16 string to int'
>>> unhex('ca11ab1e')
3390155550

partial() , comme son nom l'indique, permet une évaluation partielle d'une fonction. Regardons l'exemple suivant:

In [2]: from functools import partial

In [3]: def f(a, b, c, x):
   ...:     return 1000*a + 100*b + 10*c + x
   ...: 

In [4]: g = partial(f, 1, 1, 1)

In [5]: print g(2)
1112

Lorsque g est créé, f , qui prend quatre arguments ( a, b, c, x ), est aussi partiellement évalué pour les trois premiers arguments, a, b, c, L'évaluation de f est terminée lorsque g est appelé, g(2) , qui passe le quatrième argument à f .

Une manière de penser à partial est un registre à décalage; en poussant un argument à la fois dans une fonction. partial est utile pour les cas où les données entrent en flux et que nous ne pouvons pas passer plus d'un argument.