Operator Pythona LUB

Operator Pythona LUB

Operator OR języka Python pobiera co najmniej dwa wyrażenia logiczne i zwraca wartość True, jeśli którekolwiek z wyrażeń ma wartość True. Jeśli wszystkie wyrażenia mają wartość False, zwracana jest wartość False.

Schemat blokowy operatora LUB w języku Python

Operator logiczny lub-pythonowy

Tabela prawdy dla operatora OR w języku Python

Wyrażenie 1 Wyrażenie 2 Wynik
PRAWDA PRAWDA PRAWDA
PRAWDA FAŁSZ PRAWDA
FAŁSZ PRAWDA PRAWDA
FAŁSZ FAŁSZ FAŁSZ

Używanie operatora OR w języku Python z wyrażeniem boolowskim

Operator Python OR zwraca True, jeśli którekolwiek z przekazanych wyrażeń boolowskich ma wartość True.

Przykład: Operator Or z wyrażeniem boolowskim

Python3




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

Wyjście

bool1: False bool2: True OR operator: True 

Używanie operatora Python OR w if

W instrukcji if możemy użyć operatora OR. Możemy go użyć w przypadku, gdy chcemy wykonać blok if, jeśli którykolwiek z warunków stanie się if True.

Przykład: Or Operator z instrukcją 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> )>

Wyjście

a lies between 5 and 15 a lies between 5 and 15 a lies between 5 and 15 

Na powyższym wyjściu widzimy, że kod instrukcji if jest wykonywany zawsze. Dzieje się tak, ponieważ dla każdej wartości a jedno z wyrażeń boolowskich zawsze będzie miało wartość True, a blok else nigdy nie zostanie wykonany.

Operator Python OR – zwarcie

Operator Python Or zawsze ocenia wyrażenie, dopóki nie znajdzie wartości True, a gdy tylko znajdzie wartość True, reszta wyrażenia nie jest sprawdzana. Rozważ poniższy przykład dla lepszego zrozumienia.

Przykład: zwarcie w operatorze OR w języku Python

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)>

Wyjście

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 powyższego przykładu widać, że stosowana jest ocena zwarciowa lub leniwa. W przypadku przypadku 1 i przypadku 2 drugie wyrażenie nie jest oceniane, ponieważ pierwsze wyrażenie zwraca wartość True, podczas gdy w przypadku przypadku 3 i przypadku 4 drugie wyrażenie jest oceniane, ponieważ pierwsze wyrażenie nie zwraca wartości True.