Podmíněné vykonání příkazu zapisujeme pomocí if
. Jako podmínku můžeme použít libovolný logický výraz. Podmíněně můžeme vykonat také více příkazů. Blok příkazů vyznačujeme odsazením:
if answer != 42: # příkazy se vykonají pouze, pokud je podmínka splněna:
print("Bad answer") # vypíšeme text
answer = 42 # a navíc změníme proměnnou
Else větev
Můžeme také říct, co se má stát, když podmínka splněna není. K tomu slouží příkaz else
, který je následovaný odsazeným blokem příkazů:
if x < 10:
print("small") # provede se, pokud podmínka je splněna
else:
print("big") # provede se, pokud podmínka není splněna
Jednotlivým variantám výpočtu říkáme větve a podmíněný příkaz můžeme také označovat jako větvení.
Vícenásobné větvení
Pokud chceme testovat více možností, můžeme použít konstrukci if / elif / else
. V některých programovacích jazycích se pro vícenásobné větvení používá příkaz switch
. Tento příkaz v Pythonu nemáme, vystačíme si s využitím elif
. Příklad:
if age < 6:
print("předškolák")
elif age < 18: # testuje se, pokud neplatí předchozí podmínka
print("školák")
elif age < 65: # testuje se, pokud neplatí ani jedna předchozí podmínka
print("dospělý ")
else: # provede se, pokud neplatí ani jedna předchozí podmínka
print("důchodce")
Z if/elif
větví se provede maximálně jedna z nich – ta první, u které je splněna podmínka. Pokud v uvedeném příkladě je v proměnné age
uložena hodnota 15, vypíše se pouze text „školák“. Podmínka age < 65
je sice také splněna, ale k jejímu vyhodnocování již nedojde.
Vnořené větvení
Podmíněné příkazy můžeme i zanořovat, tj. některá z větví můžem mít další větvení. U následných větví pak musíme zvýšit odsazení. Můžeme tedy psát například:
if choice == "tea":
if money >= 10:
print("ok")
else:
print("refuse")
else:
print("not available")
if n % 2 == 1:
if x > 13:
print("Win!")
V některých případech je však jednodušší a přehlednější místo vnořeného kódu použít jednoduchý podmíněný příkaz s podmínkou využívající logické operace. Například druhý uvedený příklad můžeme zjednodušit takto:
Rozhodovačka
Rychlé procvičování výběrem ze dvou možností.
Podmíněný příkaz (if) v Pythonu (lehké)
zadání: 43
Typicky zabere: 8 min
Podmíněný příkaz (if) v Pythonu (střední)
zadání: 46
Typicky zabere: 14 min
Psaná odpověď
Cvičení, ve kterém píšete odpověď na klávesnici.
Podmíněný příkaz (if) v Pythonu (lehké)
zadání: 13
Typicky zabere: 5 min
Programování v Pythonu
Programování přímo v prohlížeči, s automatickým vyhodnocením správnosti programu.
Podmíněný příkaz (if): základy
Sada příkladů na základní if-else podmínky v Pythonu.
Podmíněný příkaz (if): těžší
Sada mírně pokročilejších příkladů na podmínky. V této sadě se využije i if-elif-else, případně vnořené podmínky.