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

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.