logo

Djelomične funkcije u Pythonu

Djelomične funkcije omogućuju nam da popravimo određeni broj argumenata funkcije i generira novu funkciju. U ovom ćemo članku pokušati razumjeti koncept djelomičnih funkcija s različitim primjerima u Piton .

Koje su djelomične funkcije i upotreba djelomičnih funkcija u Pythonu?

Djelomične funkcije u Pythonu je funkcija koja se stvara popravljanjem određenog broja argumenata druge funkcije. Python pruža ugrađeni modul pod nazivom functools To uključuje funkciju koja se zove djelomična koja se može koristiti za stvaranje djelomičnih funkcija. ApartialFunkcija zahtijeva poziva (obično drugu funkciju) i niz argumenata koji će se unaprijed ispuniti u novoj djelomičnoj funkciji. Ova je značajka slična Vegnite u C ++ .



Kako implementirate djelomičnu funkciju u Pythonu?

Djelomične funkcije podržavaju i pozicijske i ključne argumente koji će se koristiti kao fiksni argumenti.

Primjer 1

U ovom primjeru koristimo zadane vrijednosti za implementaciju djelomične funkcije. Zadane vrijednosti počinju zamjenjivati ​​varijable s lijeve strane. U primjeru smo unaprijed ispunili našu funkciju s nekim konstantnim vrijednostima B i C. I g () samo uzima jedan argument, tj. Varijabla 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)) 

Izlaz:

3145

Primjer 2

U primjeru smo koristili unaprijed definirane vrijednosti konstantnih vrijednosti vrijednosti u kojima smo dodijelili vrijednosti C i B i Add_Part () uzimaju jedan argument, tj. Varijablu 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)) 

Izlaz:

312

Korištenje djelomičnih funkcija

  • Integracija s knjižnicama: Djelomične funkcije mogu se koristiti za prilagođavanje ponašanja funkcija ili metoda trećih strana pružanjem djelomičnih argumenata i mogu se koristiti za integriranje s drugim knjižnicama.
  • Pojednostavljenje povratnih poziva: Djelomične funkcije mogu se koristiti za stvaranje specijaliziranih rukovoditelja povratnog poziva popravljanjem nekih parametara specifičnih za povratni poziv i pružanjem čistijeg sučelja za ostatak koda.
  • Učvršćivanje parametra: :: Djelomične funkcije mogu biti vrlo korisne kada imamo funkciju s više parametara i često ga želimo koristiti s fiksnim parametrima. Umjesto da više puta prolazimo te fiksne parametre, možemo stvoriti djelomičnu funkciju i nazvati je preostalih argumenata.
  • Smanjenje umnožavanja: Ako koristimo iste argumente za funkciju na raznim mjestima koja stvara djelomičnu funkciju s onim fiksnim argumentima, može pomoći u smanjenju dupliciranja i održavanja koda.
  • Zadani argumenti: Pythonov ugrađenfunctools.partialMože se koristiti za postavljanje zadanih vrijednosti za funkcionalne argumente.
  • Ponovna upotreba koda: Djelomične funkcije mogu se koristiti za dobivanje specijaliziranih funkcija iz općih funkcija i stoga nam pomažu u ponovnom korištenju našeg koda.