Č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.
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))
Výstup:
príkaz java return
3145Prí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.
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))
Výstup:
312Použ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ý Python
functools.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.