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.
Pythonfrom 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
3145Eksempel 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.
Pythonfrom 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:
312Bruk 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.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.