Programozóként gyakran azon kapja magát, hogy ismételten végrehajt egy műveletet vagy feladatot. Ez fárasztó és időigényes lehet, különösen, ha nagy vagy összetett kódbázissal dolgozik. Ezeknek a funkciókkal való automatizálása hatékonyabb megközelítés az ilyen feladatok végrehajtásában. A függvények lehetővé teszik a kódlogika egyszeri megírását, és bárhol a programban való használatát.

Mi az a Python függvény?

A Pythonban a függvény egy kódblokk, amelyet egy adott feladat végrehajtására használnak. Egy függvényt csak egyszer kell megírnia, de többször is felhasználhatja a kódban. Egy függvény argumentumokat vehet fel bemeneti és kimeneti értékként. Ez az egyszerű program egy olyan függvényt mutat be, amely három szám összegét számítja ki:

# Python függvény három szám összegének kiszámításához

defszámítás_összeg(a, b, c):
Visszatérés a+b+c

print (calculate_sum(1,2,3)) # 6-ot ad vissza
print (calculate_sum(1000, 300,44)) # 1344-et ad vissza
print (calculate_sum(12, 4,78)) # 94-et ad vissza

A fenti programban a függvény három argumentum összegét adja vissza. Ha a függvényt többször hívják, akkor minden esetben más kimenetet ad vissza. Egy hasznos alkalmazás ehhez a funkcióhoz egy számológép alkalmazás lesz.

Függvény meghatározása Pythonban

A Python számos beépített funkcióval rendelkezik elérhető a fejlesztők számára. Ezek a beépített funkciók azonban nem mindig elegendőek a legtöbb projekt igényeinek kielégítésére. Az egyéni igények kielégítéséhez meg kell határoznia az egyéni funkciókat. Az egyéni függvények meghatározása általános gyakorlat a programozásban.

A Pythonban egyéni függvényt definiálhat a def kulcsszó után a függvény neve és előtte zárójel. Íme egy példa:

deffüggvény_neve()

Figyelembe kell vennie ezeket a szabályokat, amikor függvényneveket rendel hozzá Pythonban:

  • A függvényneveket kisbetűvel kell írni.
  • A függvényneveknek leíró jellegűnek kell lenniük.
  • Az aláhúzás segítségével elválaszthatja a szavakat a függvény nevében.

A függvény meghatározása után meg kell írni a logikát a kívánt feladat végrehajtásához. Például ez a függvény kiszámítja egy háromszög területét:

# Python függvény a háromszög területének kiszámításához

defkiszámítja a_háromszög_területét(alap, magasság):
terület = (alap * magasság)/2
Visszatérés terület

print (calculate_triangle_area(12, 3))

A fenti függvény két paramétert határoz meg: bázis és magasság, elosztja a szorzatát kettővel, és az eredményt adja vissza kimenetként. Bármilyen logikát írhat, amit a funkciója végrehajtani szeretne.

A függvényargumentumok megértése

A korábbi példákban a függvények argumentumokat vettek fel a műveletek végrehajtásához. Az ezekben a példákban szereplő argumentumok kötelező vagy pozíciós argumentumként ismertek. Pythonban az argumentumok a következők lehetnek:

  • Pozíciós érvek
  • Kulcsszó argumentumok

Pozíciós érvek

A poziciós argumentumokat a definíció megfelelő sorrendjében kell átadni. Például, ha paraméterekkel definiál egy függvényt a, b, és c, ezeknek a paramétereknek megfelelően kell megadnia az értékeket, amikor meghívja őket. Nézzünk meg egy korábbi példát:

# Python függvény három szám összegének kiszámításához

defszámítás_összeg(a, b, c):
Visszatérés a+b+c

print (calculate_sum(1,2,3)) # 6-ot ad vissza
print (calculate_sum(1000, 300,44)) # 1344-et ad vissza
print (calculate_sum(12, 4,78)) # 94-et ad vissza

A fenti programban a számítás_összeg() függvény három argumentumot vesz fel, amikor hívjuk. Minden argumentum egy megfelelő paramétert képvisel. Az első függvényhívásban számok 1, 2, és 3 képviselni a, b, és c Eszerint.

A paraméter a függvény definíciójában van deklarálva, míg az argumentum a függvény meghívásakor átadott érték. Ez az érték a megfelelő paraméter reprezentációja.

Az állásponti érvek kötelezőek. Ha nem adja hozzá őket, akkor a TypeError. A következő példa ezt szemlélteti:

defszámítás_összeg(a, b, c):
Visszatérés a+b+c

print (calculate_sum(1,2)) # TypeError-t vet fel

Amikor a fenti programot futtatja a gépén, az alábbi képen láthatóhoz hasonló hibaüzenetet kap:

Kulcsszóérvek

A kulcsszó argumentumokat nem feltétlenül kell átadni, amikor függvényt hív meg. Ezek opcionális érvek, és nem kell konkrét sorrendet követniük. A Python lehetővé teszi a használatát *args és **kwargs kulcsszó argumentumok megadásához.

A használaton kívül *args és **kwargs, az argumentumokhoz alapértelmezett értékeket is megadhat. Ha ezt megteszi, akkor nem jelenik meg hibaüzenet, ha elfelejt egy értéket hozzáadni a függvény meghívásakor. Ez a példa illusztrálja:

defszámítás_összeg(a, b, c=3):
Visszatérés a+b+c

print (calculate_sum(1,2)) # 6-ot ad vissza

A fenti programban mikor számítás_összeg() hívják, nincs mellette érv c; ez nem befolyásolja a programot, mert c már rendelkezik alapértelmezett értékkel. Annyi argumentumhoz megadhat alapértelmezett értéket, amennyit csak akar, de ügyeljen arra, hogy ezt bölcsen tegye.

Funkciók használatával rendszerezheti kódját

A funkciók hasznosak a kód rendszerezéséhez, olvashatóbbá és hatékonyabbá téve azt. A funkciók segítségével a kódot kisebb, újrafelhasználható darabokra bonthatja, amelyek könnyebben megérthetők és karbantarthatók. Ezenkívül, ha módosítania kell a kódot, csak a szükséges funkciót kell módosítania, nem pedig a teljes kódbázist.