As funções parciais permitem-nos fixar um certo número de argumentos de uma função e gerar uma nova função. Neste artigo tentaremos entender o conceito de Funções Parciais com diferentes exemplos em Pitão .
O que são funções parciais e o uso de funções parciais em Python?
Funções parciais em Python são funções criadas fixando um certo número de argumentos de outra função. Python fornece um módulo integrado chamado ferramentas funcionais que inclui uma função chamada parcial que pode ser usada para criar funções parciais. Opartial
A função recebe uma chamada (geralmente outra função) e uma série de argumentos a serem pré-preenchidos na nova função parcial. Este recurso é semelhante a vincular em C++ .
Como você implementa uma função parcial em Python?
Funções parciais suportam argumentos posicionais e de palavras-chave para serem usados como argumentos fixos.
Exemplo 1
Neste exemplo usamos valores padrão para implementar a função parcial. Os valores padrão começam a substituir as variáveis a partir da esquerda. No exemplo, preenchemos previamente nossa função com alguns valores constantes de a b e c. E g() leva apenas um único argumento, ou seja, a variável 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))
Saída:
3145
Exemplo 2
No exemplo, usamos valores constantes de valor predefinidos nos quais atribuímos os valores de c e b e add_part() leva um único argumento, ou seja, a variável 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))
Saída:
312
Usos de funções parciais
- Integração com Bibliotecas: Funções parciais podem ser usadas para personalizar o comportamento de funções ou métodos de terceiros, fornecendo argumentos parciais e podem ser usadas para integrá-las a outras bibliotecas.
- Simplificando retornos de chamada: Funções parciais podem ser usadas para criar manipuladores de retorno de chamada especializados, corrigindo alguns parâmetros específicos de retorno de chamada e fornecendo uma interface mais limpa para o restante do código.
- Correção de parâmetros: : Funções parciais podem ser muito úteis quando temos uma função com múltiplos parâmetros e frequentemente queremos utilizá-la com alguns parâmetros fixos. Em vez de passar repetidamente esses parâmetros fixos, podemos criar uma função parcial e chamá-la com os argumentos restantes.
- Reduzindo a duplicação: Se estivermos usando os mesmos argumentos para uma função em vários lugares, criar uma função parcial com esses argumentos fixos pode ajudar a reduzir a duplicação de código e os esforços de manutenção.
- Argumentos padrão: Integrado do Python
functools.partial
pode ser usado para definir valores padrão para argumentos de função. - Reutilização do código: Funções parciais podem ser usadas para derivar funções especializadas de funções gerais e, portanto, nos ajudam a reutilizar nosso código.