Nauč se Python > Kurzy > Začátečnický kurz Pyladies > První program > Nebo anebo a

Nebo anebo a

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.


Toto je stránka lekce z kurzu, který probíhá nebo proběhl naživo s instruktorem. Přejít na stejnou lekci v kurzu pro samouky.