logo

Operátor Pythonu ALEBO

Operátor Python OR vezme aspoň dva boolovské výrazy a vráti hodnotu True, ak je niektorý z výrazov True. Ak sú všetky výrazy False, vráti False.

Vývojový diagram operátora OR Pythonu

Python-logic-or-operator



Tabuľka pravdy pre operátora Python OR

Výraz 1 Výraz 2 Výsledok
Pravda Pravda Pravda
Pravda Nepravdivé Pravda
Nepravdivé Pravda Pravda
Nepravdivé Nepravdivé Nepravdivé

Použitie operátora Python OR s boolovským výrazom

Operátor Python OR vráti hodnotu True v ktoromkoľvek z odovzdaných booleovských výrazov má hodnotu True.

Príklad: Alebo operátor s boolovským výrazom

Python3








bool1>=> 2>>>3> bool2>=> 2><>3> > print>(>'bool1:'>, bool1)> print>(>'bool2:'>, bool2)> > # or operator> OR>=> bool1>or> bool2> print>(>'OR operator:'>, OR)>

>

>

Výkon

bool1: False bool2: True OR operator: True>

Použitie operátora Python OR v if

V príkaze if môžeme použiť operátor OR. Môžeme ho použiť v prípade, keď chceme vykonať blok if, ak sa niektorá z podmienok stane pravdivou.

Príklad: Alebo operátor s príkazom if

Python3




# or operator with if> def> fun(a):> >if> a>>=> 5> or> a <>=> 15>:> >print>(>'a lies between 5 and 15'>)> >else>:> >print>(>'a is either less than 5 or greater than 15'>)> > > # driver code> fun(>10>)> fun(>20>)> fun(>5>)>

>

>

Výkon

čo je abecedné číslo
a lies between 5 and 15 a lies between 5 and 15 a lies between 5 and 15>

Vo vyššie uvedenom výstupe vidíme, že kód pre príkaz if sa vykonáva vždy. Je to preto, že pre každú hodnotu a bude jeden z boolovských výrazov vždy True a blok else sa nikdy nevykoná.

Operátor Pythonu OR – skrat

Operátor Python Or vždy vyhodnocuje výraz, kým nenájde hodnotu True a akonáhle nenájde hodnotu True, zvyšok výrazu sa nekontroluje. Pre lepšie pochopenie zvážte nižšie uvedený príklad.

Príklad: Skrat v Pythone OR operátor

Python3




# short circuit in Python or operator> def> true():> >print>(>'Inside True'>)> >return> True> > def> false():> >print>(>'Inside False'>)> >return> False> > case1>=> true()>or> false()> print>(>'Case 1'>)> print>(case1)> print>()> > case2>=> true()>or> true()> print>(>'Case 2'>)> print>(case2)> print>()> > case3>=> false()>or> false()> print>(>'Case 3'>)> print>(case3)> print>()> > case4>=> false()>or> true()> print>(>'Case 4'>)> print>(case4)>

>

>

Výkon

Inside True Case 1 True Inside True Case 2 True Inside False Inside False Case 3 False Inside False Inside True Case 4 True>

Z vyššie uvedeného príkladu vidíme, že je dodržané skratové alebo lenivé vyhodnotenie. V prípade 1 a 2 sa druhý výraz nevyhodnotí, pretože prvý výraz vráti hodnotu True, zatiaľ čo v prípade 3 a prípad 4 sa druhý výraz vyhodnotí tak, že prvý výraz nevráti hodnotu True.