logo

Частични функции в Python

Частичните функции ни позволяват да коригираме определен брой аргументи на функция и да генерираме нова функция. В тази статия ще се опитаме да разберем концепцията за частични функции с различни примери в Python .

Какви са частичните функции и използването на частични функции в Python?

Частичните функции в Python са функция, която се създава чрез фиксиране на определен брой аргументи на друга функция. Python осигурява вграден модул, наречен FuncTools Това включва функция, наречена частична, която може да се използва за създаване на частични функции. ThepartialФункцията поема извикване (обикновено друга функция) и поредица от аргументи, които да бъдат предварително изпълнени в новата частична функция. Тази функция е подобна на свързване в C ++ .

Как се прилага частична функция в Python?

Частичните функции поддържат както позиционните, така и аргументите на ключовите думи, които се използват като фиксирани аргументи.



Пример 1

В този пример използваме стойности по подразбиране, за да внедрим частичната функция. Стойностите по подразбиране започват да заменят променливи отляво. В примера ние сме попълнили предварително функцията си с някои постоянни стойности на B и c. И G () просто взема един аргумент, т.е. променливата 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)) 

Резултат:

html тагове
3145

Пример 2

В примера сме използвали предварително дефинирани стойности на постоянни стойности, в които сме присвоили стойностите на C и B и Add_part (), отнема един аргумент, т.е. променливата 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)) 

Резултат:

312

Използване на частични функции

  • Интеграция с библиотеки: Частичните функции могат да се използват за персонализиране на поведението на функции или методи на трети страни чрез предоставяне на частични аргументи и могат да се използват за интегрирането му с други библиотеки.
  • Опростяване на обратните повиквания: Частичните функции могат да се използват за създаване на специализирани обработвачи на обратно извикване чрез фиксиране на някои специфични за обратно извикване параметри и осигуряване на по-чист интерфейс за останалата част от кода.
  • Фиксиране на параметри: : Частичните функции могат да бъдат много полезни, когато имаме функция с множество параметри и често искаме да я използваме с фиксирани някои параметри. Вместо многократно да предаваме тези фиксирани параметри, можем да създадем частична функция и да я извикаме с останалите аргументи.
  • Намаляване на дублирането: Ако използваме едни и същи аргументи за функция на различни места, създавайки частична функция с тези фиксирани аргументи, може да помогне за намаляване на дублирането на кодове и усилията за поддръжка.
  • Аргументи по подразбиране: Вграденият на Pythonfunctools.partialможе да се използва за задаване на стойности по подразбиране за функционални аргументи.
  • Повторна употреба на код: Частичните функции могат да се използват за извличане на специализирани функции от общи функции и следователно ни помагат да използваме повторно нашия код.