Vzpomínáš na tabulku operátorů z lekce o Porovnávání? Nyní si ji doplníme o další tři operátory, které se hodí do podmínek:
Symbol | Příklad | Popis |
---|---|---|
and |
True and False |
„a zároveň“ |
or |
True or False |
„a nebo“ |
not |
not False |
„ne“ |
Pro příklad použijeme and
v tomto programu.
Zkus si ho projít a okomentovat části, které nejsou na první pohled jasné.
# Tento program rozdává naivní rady do života.
print('Odpovídej "ano" nebo "ne".')
stastna_retezec = input('Jsi šťastná? ')
if stastna_retezec == 'ano':
stastna = True
elif stastna_retezec == 'ne':
stastna = False
else:
print('Nerozumím!')
bohata_retezec = input('Jsi bohatá? ')
if bohata_retezec == 'ano':
bohata = True
elif bohata_retezec == 'ne':
bohata = False
else:
print('Nerozumím!')
if bohata and stastna:
# Je bohatá a zároveň štǎstná, ta se má.
print('Gratuluji!')
elif bohata:
# Je bohatá, ale není „bohatá a zároveň šťastná“,
# takže musí být jen bohatá.
print('Zkus se víc usmívat.')
elif stastna:
# Tady musí být jen šťastná.
print('Zkus míň utrácet.')
else:
# A tady víme, že není ani šťastná, ani bohatá.
print('To je mi líto.')
Všimni si co se stane, když zadáš něco jiného než „ano“ nebo „ne“.
Proměnná stastna
nebo bohata
se nenastaví, a když je ji potom
potřeba použít, program skončí s chybou.
O tom, jak se vypořádat s chybami, si povíme později.