A részleges funkciók lehetővé teszik számunkra, hogy rögzítsük a függvény bizonyos számú argumentumát és új funkciót generáljunk. Ebben a cikkben megpróbáljuk megérteni a részleges funkciók fogalmát a különböző példákkal Piton -
Mik a részleges funkciók és a részleges funkciók használata a Pythonban?
A Python részleges funkciói egy olyan függvény, amelyet egy másik függvény bizonyos számú érvének rögzítésével hozzanak létre. A Python beépített modult biztosít Functools Ez magában foglalja a részleges nevű funkciót, amely felhasználható a részleges funkciók létrehozására. ApartialA funkció egy felhívható (általában egy másik funkciót) és az argumentumok sorozatát veszi elő, amelyet az új részleges függvényben előzetesen töltenek be. Ez a szolgáltatás hasonló a kötődjön a c ++ -ban -
Hogyan valósíthat meg egy részleges funkciót a pythonban?
A részleges funkciók alátámasztják mind a pozíciós, mind a kulcsszó argumentumokat, amelyeket rögzített argumentumokként használni kell.
1. példa
Ebben a példában az alapértelmezett értékeket használjuk a részleges függvény megvalósításához. Az alapértelmezett értékek balról kezdik a változók cseréjét. A példában előzetesen kitöltöttük funkciónkat az A B és C állandó értékeivel. És g () csak egyetlen argumentumot vesz, azaz az x változó.
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))
Kimenet:
31452. példa
A példában az előre definiált érték állandó értékeket használtuk, amelyekben a c és b értékeket hozzárendeltük, és az add_part () egyetlen argumentumot vesznek, azaz az a változót.
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))
Kimenet:
312A részleges funkciók felhasználása
- Integráció a könyvtárakba: A részleges funkciók felhasználhatók a harmadik féltől származó funkciók vagy módszerek viselkedésének testreszabására részleges érvek megadásával, és felhasználhatók annak integrálására más könyvtárakba.
- A visszahívások egyszerűsítése: A részleges funkciók felhasználhatók speciális visszahívókezelők létrehozására, ha rögzítik néhány visszahívási-specifikus paramétert és tisztább felületet biztosítanak a kód többi részéhez.
- Paraméter rögzítése: : A részleges funkciók nagyon hasznosak lehetnek, ha több paraméterrel rendelkező funkciónk van, és gyakran szeretnénk használni néhány rögzített paraméterrel. Ahelyett, hogy többször átadnánk ezeket a rögzített paramétereket, létrehozhatunk egy részleges funkciót, és a fennmaradó érvekkel hívhatjuk fel.
- A duplikáció csökkentése: Ha ugyanazokat az érveket használjuk egy funkcióhoz különböző helyeken, egy részleges funkciót létrehozva ezekkel a rögzített argumentumokkal, elősegítheti a kód -duplikáció és a karbantartási erőfeszítések csökkentését.
- Alapértelmezett érvek: Python beépített
functools.partialHasználható az alapértelmezett értékek beállításához a funkció argumentumaihoz. - A kód újrafelhasználhatósága: A részleges funkciók felhasználhatók az általános funkciókból származó speciális funkciók levezetésére, és ezért segítenek a kód újrafelhasználásában.