logo

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

ciąg do rozmowy
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.