Jak działa funkcja częściowa w Pythonie?

Nie jestem w stanie skupić się na tym, jak częściowe działa w functools. Mam następujący kod ztutaj:

>>> sum = lambda x, y : x + y
>>> sum(1, 2)
3
>>> incr = lambda y : sum(1, y)
>>> incr(2)
3
>>> def sum2(x, y):
    return x + y

>>> incr2 = functools.partial(sum2, 1)
>>> incr2(4)
5

Teraz w linii

incr = lambda y : sum(1, y)

Dostaję to bez względu na argumentincr zostanie przekazany jakoy dolambda który wrócisum(1, y) to znaczy1 + y.

Rozumiem, że. Ale tego nie rozumiałemincr2(4).

W jaki sposób4 przechodzi jakox w częściowej funkcji? Dla mnie,4 powinien zastąpićsum2. Jaka jest relacja międzyx i4?

questionAnswers(5)

yourAnswerToTheQuestion