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. De partial Funksjonen 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:

 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 innebygd functools.partial kan 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.