Niektoré príkazy a skupiny príkazov potrebujeme vykonať len v prípade ak je splnená nejaká podmienka. Slúži na to konštrukcia if...
vek = int(input())
if vek > 18:
print("Hura, uz mozes sam(a) jazdit autom :)")
# v porovnanvani mozeme pouzivat aj znamienka
# < menší ako
# > väčší ako
# <= menší alebo rovný ako
# >= väčší alebo rovný ako
# == rovný ako (presne)
# != nerovný (iný ako)
Niekedy sa nám hodí špecifikovať aj čo sa má stať, keď podmienka neplatí, môžeme na to použiť vetvu else...
vek = int(input("Koľko máš rokov?"))
if vek > 18:
print("Hura, uz mozes sam(a) jazdit autom :)")
print("aj po dialnici...")
else:
print("Na šoférovanie si ešte počkáš :(")
Pomocou vetvy (vetiev) elif môžeme konštrukciu rozhodovania ešte viac rozšíriť a rozlíšiť aj viac ako 2 prípady... Ak špecifikujeme podmienku za slovom IF a aj za niekoľkými ELIF, vykoná sa len tá vetva, ktorej podmienka sa vyhodnotí prvá ako pravdivá, pričom sa vyhodnocujú postupne zhora-dole.
vek = int(input("Koľko máš rokov?"))
if vek < 6:
print("cestujes zadarmo")
elif vek > 70:
print("dochodca - zlava 70%")
elif vek < 18:
print("studentska zlava 50%")
else:
print("smola, nemas ziadnu zlavu")
print("platis 100% ceny")
Komplikovanejšie podmienky vieme vyjadriť pomocou logických spojok AND, OR a NOT...
vek = int(input("Koľko máš rokov?"))
# OR spája dve podmienky, z ktorých stačí aby jedna bola splnená
if vek < 18 or vek > 70:
print("zlava")
else:
print("bez zlavy")
# AND spája dve podmienky, z ktorých musia byť splnené obe
if vek >= 18 and vek <= 70:
print("zlava")
else:
print("bez zlavy")
# NOT otočí význam, čo bolo splnené už nie je a čo nebolo, to už je
# NOT sa môže hodiť aj keď chcete rýchlo vymeniť vetvy IF a ELSE
if not vek > 70:
print("Na dôchodcovskú zľavu nárok nemáte.")