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
bool
a 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 naTrue
aFalse
?
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í.