logo

Čiastočné funkcie v pythone

Čiastočné funkcie nám umožňujú opraviť určitý počet argumentov funkcie a vygenerovať novú funkciu. V tomto článku sa pokúsime porozumieť koncepcii čiastočných funkcií s rôznymi príkladmi v Pythón .

Aké sú čiastočné funkcie a použitie čiastočných funkcií v Pythone?

Čiastočné funkcie v Pythone je funkcia, ktorá sa vytvára stanovením určitého počtu argumentov inej funkcie. Python poskytuje vstavaný modul s názvom funkcia To zahŕňa funkciu nazývanú čiastočná, ktorá sa dá použiť na vytvorenie čiastočných funkcií. TenpartialFunkcia berie Callable (zvyčajne inú funkciu) a sériu argumentov, ktoré sú vopred vyplnené v novej čiastočnej funkcii. Táto funkcia je podobná ako viazať v C ++ .

Ako implementujete čiastočnú funkciu v Pythone?

Čiastočné funkcie podporujú argumenty pozičných aj kľúčových slov, ktoré sa majú použiť ako pevné argumenty.



pole reťazcov v programovaní v c

Príklad 1

V tomto príklade používame predvolené hodnoty na implementáciu čiastočnej funkcie. Predvolené hodnoty začnú výmeny premenných zľava. V príklade sme vopred naplnili našu funkciu s niektorými konštantnými hodnotami B a C. A g () len má jeden argument, t. J. Premenná 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)) 

Výstup:

príkaz java return
3145

Príklad 2

java rovná sa metóda

V príklade sme použili vopred definované hodnotové konštantné hodnoty, v ktorých sme priradili hodnoty C a B a add_part (), má jeden argument, t.j. premenná 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)) 

Výstup:

312

Použitie čiastočných funkcií

  • Integrácia s knižnicami: Čiastočné funkcie sa môžu použiť na prispôsobenie správania funkcií alebo metód tretích strán poskytnutím čiastočných argumentov a môžu sa použiť na jeho integráciu s inými knižnicami.
  • Zjednodušenie spätného volania: Čiastočné funkcie sa dajú použiť na vytvorenie špecializovaných obsluhy spätného volania opravou niektorých parametrov špecifických pre volanie a poskytnutím čistejšieho rozhrania pre zvyšok kódu.
  • Oprava parametrov: : Čiastočné funkcie môžu byť veľmi užitočné, keď máme funkciu s viacerými parametrami a často ju chceme používať s niektorými parametrami. Namiesto opakovaného odovzdávania týchto pevných parametrov môžeme vytvoriť čiastočnú funkciu a nazvať ju so zostávajúcimi argumentmi.
  • Zníženie duplikácie: Ak používame rovnaké argumenty pre funkciu na rôznych miestach, ktoré vytvárajú čiastočnú funkciu s týmito pevnými argumentmi, môže pomôcť znížiť duplikáciu kódu a úsilie o údržbu.
  • Predvolené argumenty: Vstavaný Pythonfunctools.partialmožno použiť na nastavenie predvolených hodnôt pre argumenty funkcií.
  • Opätovné použitie kódu: Čiastočné funkcie sa môžu použiť na odvodenie špecializovaných funkcií zo všeobecných funkcií, a preto nám pomáhajú znovu použiť náš kód.