Currying em Python Usando functools.partial

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Na programação funcional, a currificação (currying) é uma técnica de transformar uma função que recebe múltiplos argumentos em uma sequência de funções que recebem cada uma um único argumento. Em Python, podemos usar a função functools.partial() para implementar a currificação.

Função Curry

Escreva uma função curry(fn, *args) que currifique uma função dada fn. A função deve retornar uma nova função que se comporta como fn com os argumentos dados, args, parcialmente aplicados.

from functools import partial

def curry(fn, *args):
  return partial(fn, *args)
add = lambda x, y: x + y
add10 = curry(add, 10)
add10(20) ## 30

Resumo

Neste desafio, você aprendeu como implementar uma função curry usando functools.partial() em Python. A função curry permite que você aplique parcialmente argumentos a uma função e retorne uma nova função que recebe os argumentos restantes.