Delvise funktioner i Python
Delvise funktioner giver os mulighed for at rette et vist antal argumenter for en funktion og generere en ny funktion. I denne artikel vil vi forsøge at forstå begrebet delvise funktioner med forskellige eksempler i Python .
Hvad er delvise funktioner og brugen af delvise funktioner i Python?
Delvise funktioner i Python er en funktion, der oprettes ved at fastsætte et vist antal argumenter for en anden funktion. Python leverer et indbygget modul kaldet Functools Det inkluderer en funktion kaldet delvis, der kan bruges til at skabe delvise funktioner. De partial Funktion tager en konverterbar (normalt en anden funktion) og en række argumenter, der skal fyldes i den nye delvise funktion. Denne funktion ligner bind i C ++ .
Hvordan implementerer du en delvis funktion i Python?
Delvise funktioner understøtter både positionelle og nøgleordargumenter, der skal bruges som faste argumenter.
Eksempel 1
I dette eksempel bruger vi standardværdier til at implementere den delvise funktion. Standardværdierne begynder at udskifte variabler fra venstre. I eksemplet har vi forudfyldt vores funktion med nogle konstante værdier af A B og C. Og g () tager bare et enkelt argument, dvs. variablen 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 ))
Produktion:
3145Eksempel 2
I eksemplet har vi brugt foruddefinerede værdi konstante værdier, hvor vi har tildelt værdierne for C og B og ADD_PART (), et enkelt argument, dvs. variablen 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 ))Produktion:
312Anvendelser af delvise funktioner
- Integration med biblioteker: Delvise funktioner kan bruges til at tilpasse opførelsen af tredjepartsfunktioner eller metoder ved at tilvejebringe delvise argumenter og kan bruges til at integrere den med andre biblioteker.
- Forenkling af tilbagekald: Delvise funktioner kan bruges til at oprette specialiserede tilbagekaldshåndterere ved at fastsætte nogle tilbagekaldsspecifikke parametre og tilvejebringe en renere grænseflade til resten af koden.
- Parameterfiksering: : Delvise funktioner kan være meget nyttige, når vi har en funktion med flere parametre, og vi vil ofte bruge den med nogle parametre fast. I stedet for gentagne gange at videregive de faste parametre, kan vi oprette en delvis funktion og kalde den med de resterende argumenter.
- Reduktion af duplikering: Hvis vi bruger de samme argumenter til en funktion forskellige steder, kan det at skabe en delvis funktion med disse faste argumenter hjælpe med at reducere kodeduplikation og vedligeholdelsesindsats.
- Standardargumenter: Pythons indbyggede
functools.partialKan bruges til at indstille standardværdier for funktionsargumenter. - Genanvendelighed af kode: Delvise funktioner kan bruges til at udlede specialiserede funktioner fra generelle funktioner og derfor hjælpe os med at genbruge vores kode.