Podmínky 2: Pravda, nepravda a porovnávání
Bool Typ
Než se dostaneme k podmínkám, je důležité pochopit nový datový typ - bool. Bool typ, pojmenovaný po Georgi Booleovi, anglickém matematikovi, je jednoduchým datovým typem, který může obsahovat pouze dvě hodnoty: True nebo False, česky bychom řekli pravda nebo nepravda. Někdy se jim také říká logická proměnná, logical, apod. V programování nám umožňují provádět logické operace a rozhodovat se na základě určitých podmínek.
V Pythonu jsou booleovy hodnoty reprezentovány klíčovými slovy True a False, nezapomínej, že Python rozlišuje velká a malá písmena.
Příklad použití bool typu:
# proměnné - bool
is_true = True
is_false = False
print(is_true) # True
print(is_false) # False
print(type(is_true)) # <class 'bool'>
print(type(is_false)) # <class 'bool'>
Porovnávací Operátory
Porovnávací operátory slouží k porovnávání hodnot a výsledkem porovnání je vždy logická hodnota - True nebo False. Asi si vzpomínáte z matematiky na operátory jako větší > a menší <.
Například, pokud máme dvě čísla cislo1 a cislo2, můžeme porovnat, zda je cislo1 větší než cislo2 nebo zda je cislo1 menší než cislo2.
cislo1 = 5
cislo2 = 10
print(cislo1 > cislo2) # False
print(cislo1 < cislo2) # True
je_cislo1_vetsi = cislo1 > cislo2
print(je_cislo1_vetsi) # False
Kromě operátorů větší a menší můžeme zjišťovat také rovnost. V Pythonu je operátor rovnosti reprezentován dvěma rovnítky ==, protože jedno rovnítko = je vyhrazeno pro přiřazení hodnoty.
heslo = "tajne"
print(heslo == "tajne") # True
print(heslo == "tajne2") # False
print(heslo != "tajne") # False
print(heslo != "tajne2") # True
Operátor != znamená nerovnost, tedy zda se dvě hodnoty nerovnají.
Dále existují operátory jako >= (větší nebo rovno) a <= (menší nebo rovno). Nedá se říct, že by některý byl méně užitečný než jiný. Všechny jsou důležité a mohou se hodit v různých situacích.
# všechny logické operátory
print(cislo1 == cislo2) # rovná se
print(cislo1 > cislo2) # větší než
print(cislo1 < cislo2) # menší než
print(cislo1 >= cislo2) # větší nebo rovno
print(cislo1 <= cislo2) # menší nebo rovno
print(cislo1 != cislo2) # nerovná se
Funkce bool()
Funkce bool() slouží k převodu jiného datového typu na bool. Většinou vrací True, s výjimkou několika specifických případů, jako je nula (0, 0.0) nebo prázdný řetězec ("").
Příklady použití funkce bool():
# převod na bool
# int na bool
print(bool(0)) # False
print(bool(1)) # True
print(bool(2)) # True
print(bool(-1)) # True
# float na bool
print(bool(0.0)) # False
print(bool(0.1)) # True
print(bool(-0.1)) # True
# str na bool
print(bool("")) # False
print(bool(" ")) # True
print(bool("Ahoj"))# True
Kontrolní Otázky
Pokud to dokážeš vysvětlit někomu jinému vlastními slovy, jsi na dobré cestě tomu rozumět. Dokážeš odpovědět na tyto otázky?
- Co je datový typ
boola proč je v programování důležitý? - Jak jsou v jazyce Python reprezentovány logické hodnoty?3
- Jak můžeš v jazyce Python porovnat dvě hodnoty a zjistit, zda se rovnají, nebo ne?
- Jaké jsou operátory porovnávání v jazyce Python a jaké jsou jejich funkce?
- Jakou roli hraje funkce
bool()a jak ji lze v Pythonu použít? - Jaké jsou příklady hodnot, které se po předání funkci
bool()převedou naTrueaFalse?
Kvízy
True a False jsou klíčová slova v jazyce Python a představují logické hodnoty.
- Pravda
- Nepravda
Operátor porovnání pro rovnost v jazyce Python je =.
- Pravda
- Nepravda
Funkci bool() lze použít k převodu jiných datových typů na boolean.
- Pravda
- Nepravda
Funkce bool("0") vrátí hodnotu False.
- Pravda
- Nepravda
Funkce bool(-1) vrátí Pravda.
- Pravda
- Nepravda
Jaký bude výstup následujícího kódu: bool(0.1)
- True
- False
- 0.1
- Žádný
Který z následujících operátorů je porovnávacím operátorem “NENÍ ROVNO” v jazyce Python?
- /=
- !=
- ><
- ===
Jaký bude výstup následujícího kódu: print("Hello" == "Hello")
- True
- False
- Hello
- Nic
Který z následujících příkazů vrátí False?
-
bool('False') -
bool(0)
-
bool(' ') -
bool(-0,5)
Co vrátí následující kód: print(bool(""))
- True
- False
- ""
- Nic
Cvičení
Cvičení 1: Porovnávání čísel
- Přiřaďte libovolná dvě různá čísla dvěma různým proměnným.
- Vypište výsledek porovnání těchto čísel pomocí každého z operátorů porovnávání.
Cvičení 2: Porovnávání řetězců
- Přiřaďte dva různé řetězce dvěma různým proměnným.
- Porovnejte tyto dva řetězce pomocí operátorů rovnosti a nerovnosti. Vypište výsledky.
Cvičení 3: Porozumění funkci bool()
- Převeďte různé datové typy (int, float, string) na boolean pomocí funkce bool(). Vyberte hodnoty, které vracejí jak
True, takFalse. Vypište výsledky.
Cvičení 4: Vlastní Porovnání
- Vymyslete si vlastní porovnání, které byste chtěli provést v Pythonu. Například, zda je vaše oblíbená barva stejná jako barva vašeho trička. Vypište výsledek porovnání.