Python III. lecke: Döntési szerkezetek és logikai feltételek
Egy program akkor válik valóban hasznossá, ha képes önálló döntéseket hozni a kapott adatok alapján. Erre a célra szolgálnak a feltételes elágazások, amelyek meghatározott logikai feltételek teljesülése esetén más-más kódrészletet hajtanak végre.
1. Az if, elif és else szerkezet
A logikai elágazás gerincét az `if` utasítás adja. Ha a megadott feltétel igaz, a hozzá tartozó kód lefut. Ha több egymást kizáró lehetőséget akarunk megvizsgálni, az `elif` (else if) ágakat használjuk. Az `else` ág a legvégén minden olyan esetet lefed, ami a korábbi feltételek egyikébe sem illett bele.
szam = int(input("Adj meg egy számot: "))
if szam > 0:
    print("A szám pozitív.")
elif szam == 0:
    print("A szám nulla.")
else:
    print("A szám negatív.")
2. A Python védjegye: A kötelező behúzás
Szemben a legtöbb programozási nyelvvel, a Python nem használ kapcsos zárójeleket a kódblokkok határainak jelölésére. Itt a struktúrát a kettőspont utáni **behúzás** (tabulátor vagy négy szóköz) határozza meg. Ha a behúzás mértéke pontatlan, vagy teljesen elmarad, a fordító futtatás helyett hibát (`IndentationError`) fog dobni.
3. Összetett feltételek kezelése
A döntések során gyakran több feltételnek kell egyszerre teljesülnie. Ehhez logikai operátorokat használunk. Az `and` segítségével csak akkor igaz a feltétel, ha minden részlet teljesül. Az `or` esetén elég, ha az egyik feltétel igaz, míg a `not` megfordítja a logikai értéket.