Szerkesztés alatt!
Az oldal további része szerkesztés alatt áll, a tartalma minden további értesítés nélkül többször, gyakran, jelentősen megváltozhat!
Függvények, feltételek¶
Tartalom
Függvények paraméterrel, visszatérési értékkel. Az if utasítás. Feladatmegoldás függvények és if segítségével.
Függvények¶
A függvény egy olyan programozási konstrukció, amely lehetővé teszi, hogy egy adott műveletet többször végrehajtsunk különböző bemeneti adatokkal anélkül, hogy újra és újra ugyanazt a kódot kellene megírnunk. A függvények segítenek a kódot rendszerezni, elkerülni a kód ismétlését.
Egy egyszerű függvényt így definiálhatunk:
1 2 | |
Mi történik itt?
- A
defkulcsszóval létrehozunk egy új függvényt. - A függvény neve
hello. - A függvény zárójelek között (itt üresen) kaphat paramétereket, amelyek a függvény belsejében használható bemeneti értékek lesznek.
- A függvény törzse behúzás alatt található, ahol a konkrét utasítások vannak, például a
printfüggvény, amely kiír egy szöveget.
Hogyan használjuk a függvényt?¶
A függvény meghívásához egyszerűen írjuk le a nevét, majd tegyünk zárójeleket.
1 | |
Függvények paraméterei¶
A függvények különböző bemeneti adatokat (paramétereket) is kaphatnak, amelyekkel rugalmasan tudnak működni. Például, ha azt szeretnénk, hogy a függvényünk ne mindig ugyanazt a szöveget írja ki, hanem változó szövegeket fogadjon el, használhatunk paramétereket:
1 2 | |
Itt a nev egy paraméter, amely a függvény belsejében használható változóként.
Meghívás esetén a zárójelbe írt érték lesz a paraméter értéke (több paraméter esetén vesszővel elválasztva).
Ha meghívjuk a függvényt, akkor a következő történik:
1 2 | |
Több paraméteres függvények¶
Amikor egy függvény több paramétert vár, akkor ezeket mind meg kell adni a függvényhívás során. Például, ha szeretnénk egy olyan függvényt, amely két számot kap, és összeadja őket, így definiáljuk:
1 2 | |
Itt az a és a b a két paraméter, amelyeket a függvényhíváskor meg kell adni.
Így használhatjuk:
1 | |
A Pythonban lehetőség van több paraméter használatára is, és ezeket sorrendben kell megadni a függvényhíváskor. Például egy három számot összeadó függvény:
1 2 | |
A függvényt így hívhatjuk meg:
1 | |
Alapértelmezett paraméterek (default paraméterek)¶
A Pythonban függvényekben lehetőség van alapértelmezett értékeket is meghatározni a paraméterekhez. Ez azt jelenti, hogy ha a függvényt meghívjuk, és nem adunk meg egy bizonyos paramétert, akkor az automatikusan egy előre meghatározott értéket kap.
Definiáljunk például egy függvényt, amely két számot vár paraméterként, de ha a második paramétert nem adjuk meg, akkor az alapértelmezett értéke 1 legyen:
1 2 | |
Itt a b paraméter alapértelmezett értéke 1.
Ezért ha a függvényt csak egy paraméterrel hívjuk meg, akkor a második paraméter értéke automatikusan 1 lesz:
1 | |
Ha mindkét paramétert megadjuk, akkor az alapértelmezett értéket felülírjuk:
1 | |
Több alapértelmezett paraméter¶
A függvények több alapértelmezett paramétert is kaphatnak, de fontos, hogy az alapértelmezett paramétereket mindig a nem alapértelmezett paraméterek után helyezzük el. Például:
1 2 3 | |
Ez a függvény egy nevet vár, valamint két alapértelmezett szöveget, amiket nem kötelező megadni. Ha csak a nevet adjuk meg, akkor az alapértelmezett üzenetek jelennek meg:
1 2 3 4 | |
De ha szeretnénk, felülírhatjuk az alapértelmezett paramétereket:
1 2 3 4 | |
Visszatérési értékek: return¶
A függvények nemcsak bemenetet kaphatnak, hanem eredményeket is visszaadhatnak.
Ez a visszatérés a return kulcsszóval történik.
Ha például egy olyan függvényt szeretnénk, ami két számot összead, és visszaadja az eredményt, így nézne ki:
1 2 | |
Ebben az esetben a függvény a két paraméter, a és b összegét adja vissza, amit a függvény meghívásakor használhatunk fel:
1 2 | |
Itt a osszead(5, 10) függvényhívás visszatér a 15-tel, amit elmentünk a eredmeny változóba, és kiírtuk.
Függvények hívása más függvényekből¶
A függvények belsejében más függvényeket is meghívhatunk, ezáltal összetettebb működéseket is létrehozhatunk. Például, ha van egy függvényünk, ami megdupláz egy számot, azt egy másik függvényből is felhasználhatjuk:
1 2 3 4 5 6 | |
Ebben az esetben a duplazast_hasznal() függvény belül meghívja a duplaz() függvényt, és a visszatért értéket (10) kiírja.
Feltételes elágazások: if, elif, else¶
A programokban gyakran szükséges különböző műveleteket végrehajtani attól függően, hogy egy adott feltétel igaz vagy hamis. Ilyen esetekben használjuk a feltételes elágazásokat: az if, else és elif szerkezeteket.
if és else¶
Az if kulcsszó segítségével ellenőrizhetünk egy feltételt. Ha a feltétel igaz, a hozzá tartozó kódblokk végrehajtódik. Ha hamis, akkor a else ágban lévő kód fut le.
1 2 3 4 5 6 | |
Ebben a példában az if megvizsgálja, hogy a szam nagyobb-e mint 5. Ha ez igaz, akkor az első üzenet kerül kiírásra, ha nem, akkor a második.
elif: több feltétel kezelése¶
Az elif (else if) akkor használható, ha több különböző feltételt szeretnénk ellenőrizni:
1 2 3 4 5 6 7 8 | |
Itt három különböző lehetőséget vizsgálunk: ha a szám nagyobb mint 10, akkor az első üzenet jelenik meg; ha pont 10, akkor a második; egyébként pedig a harmadik.
Logikai kifejezések: and, or, not¶
A logikai kifejezések lehetővé teszik több feltétel kombinálását.
A három alapvető logikai operátor a and, or és not.
- Az
andakkor igaz, ha mindkét feltétel igaz:
1 2 | |
- Az
orakkor igaz, ha legalább az egyik feltétel igaz:
1 2 | |
- A
notmegfordítja a feltétel igazságát:
1 2 | |
Példa feladatok megoldásokkal¶
1. feladat
Írjunk függvényt, ami egy paramétert vár, és azt kiírja a képernyőre kétszer! Hívjuk meg a függvényt a "Hello, világ!" szöveggel, majd a nevünkkel, és végül a kedvenc egész számunkkal!
Példamegoldás
1 2 3 4 5 6 7 8 | |
2. feladat
Írjunk függvényt, ami nem vár paramétert, bekér egy számot, és visszaadja azt! Hívjuk meg a függvényt és olvassuk be a kedvenc egész számunkat! A függvény eredményével hívjuk meg az előző feladatban megírt függvényt!
Példamegoldás
1 2 3 4 5 6 7 | |
3. feladat
Írjunk függvényt, ami két számot vár paraméterként, és visszaadja a két szám összegét! Hívjuk meg a függvényt a saját és a padtársunk kedvenc számával, majd a függvény eredményével hívjuk meg az első feladatban megírt függvényt!
Példamegoldás
1 2 3 4 5 6 | |
4. feladat
Írjunk függvényt, ami két számot vár paraméterként, és visszaadja a két számból a nagyobbat!
Példamegoldás
1 2 3 4 5 6 7 8 9 | |
5. feladat
Írjunk függvényt, ami egy számot vár paraméterként, és igazat ad vissza, ha a szám páros, egyébként hamisat!
Példamegoldás
1 2 3 4 5 6 | |
6. feladat
Micimackó akkor eszik mézet, ha van otthon, és ha éhes. Írjunk függvényt, ami két paramétert vár, az első egy logikai érték, ami azt jelzi, hogy van-e méz otthon, a második pedig egy logikai érték, ami azt jelzi, hogy éhes-e Micimackó. A függvény igazat ad vissza, ha Micimackó mézet eszik, egyébként hamisat.
Példamegoldás
1 2 3 4 5 6 | |
7. feladat
Írjunk függvényt, ami két számot vár paraméterként, és igazat ad vissza, ha legalább az egyik szám osztható hárommal.
Példamegoldás
1 2 3 4 5 6 | |