logo

Delvis funksjoner i Python

Delvis funksjoner lar oss fikse et visst antall argumenter for en funksjon og generere en ny funksjon. I denne artikkelen vil vi prøve å forstå begrepet delvise funksjoner med forskjellige eksempler i Python .

Hva er delvise funksjoner og bruk av delvise funksjoner i Python?

Delvis funksjoner i Python er en funksjon som opprettes ved å fikse et visst antall argumenter for en annen funksjon. Python gir en innebygd modul som heter Functools Det inkluderer en funksjon som kalles delvis som kan brukes til å lage delvise funksjoner. DepartialFunksjonen tar en kallbar (vanligvis en annen funksjon) og en serie argumenter som skal ferdigstilles i den nye delvise funksjonen. Denne funksjonen ligner på Bind i C ++ .

Hvordan implementerer du en delvis funksjon i Python?

Delvis funksjoner støtter både posisjons- og søkeordargumenter som skal brukes som faste argumenter.



Eksempel 1

I dette eksemplet bruker vi standardverdier for å implementere den delvise funksjonen. Standardverdiene begynner å erstatte variabler fra venstre. I eksemplet har vi forhåndsfylt funksjonen vår med noen konstante verdier av en B og C. Og g () tar bare et enkelt argument, dvs. variabelen 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)) 

Produksjon:

gimp sletter bakgrunn
3145

Eksempel 2

I eksemplet har vi brukt forhåndsdefinerte verdikonstante verdier der vi har tildelt verdiene til C og B og Add_Part () tar et enkelt argument, dvs. variabelen 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)) 

Produksjon:

312

Bruk av delvise funksjoner

  • Integrasjon med biblioteker: Delvis funksjoner kan brukes til å tilpasse oppførselen til tredjepartsfunksjoner eller metoder ved å gi delvise argumenter og kan brukes til å integrere den med andre biblioteker.
  • Forenkle tilbakeringinger: Delvis funksjoner kan brukes til å lage spesialiserte tilbakeringingsbehandlere ved å fikse noen tilbakeringingsspesifikke parametere og gi et renere grensesnitt for resten av koden.
  • Parameterfiksing: : Delvis funksjoner kan være veldig nyttige når vi har en funksjon med flere parametere, og vi ønsker ofte å bruke den med noen parametere faste. I stedet for å gjentatte ganger passere de faste parametrene, kan vi lage en delvis funksjon og kalle den med de gjenværende argumentene.
  • Redusere duplisering: Hvis vi bruker de samme argumentene for en funksjon forskjellige steder som skaper en delvis funksjon med de faste argumentene, kan du bidra til å redusere kodedobbel og vedlikeholdsinnsats.
  • Standard argumenter: Python er innebygdfunctools.partialkan brukes til å angi standardverdier for funksjonsargumenter.
  • Gjenbrukbarhet av kode: Delvis funksjoner kan brukes til å utlede spesialiserte funksjoner fra generelle funksjoner og hjelper oss derfor med å gjenbruke koden vår.