Co to są operatory "i" i "or"?
Czasami warto połączyć wyrażenia testowe, aby ocenić wiele warunków w jednej if
instrukcji , elif
lub else
. W tym przypadku należy użyć operatorów logicznych and
i or
.
Operator or
Możesz połączyć dwa wyrażenia logiczne lub testowe przy użyciu operatora logicznego or
. W przypadku całego wyrażenia, które ma zostać obliczone na True
wartość , co najmniej jedno z wyrażeń podrzędnych musi mieć wartość true. Jeśli żadne z podwyrażeń nie jest prawdziwe, całe wyrażenie daje wartość False
. Na przykład w poniższym wyrażeniu całe wyrażenie testowe daje wartość True
, ponieważ spełnione zostały jeden z warunków w podexpressionach:
a = 23
b = 34
if a == 34 or b == 34:
print(a + b)
Jeśli oba wyrażenia podrzędne są prawdziwe, całe wyrażenie testowe True
również daje wartość .
Wyrażenie logiczne, które używa or
, ma następującą składnię:
sub-expression1 or sub-expression2
Operator and
Możesz również połączyć dwa wyrażenia testowe przy użyciu operatora logicznego and
. Oba warunki w wyrażeniu testowym muszą być prawdziwe dla całego wyrażenia testowego w celu obliczenia wartości True
. W każdym innym przypadku wyrażenie testowe to False
. W poniższym przykładzie całe wyrażenie testowe False
daje w wyniku wartość , ponieważ tylko jeden z warunków w podwyrażeniu ma wartość true:
a = 23
b = 34
if a == 34 and b == 34:
print (a + b)
Wyrażenie logiczne, które używa and
, ma następującą składnię:
sub-expression1 and sub-expression2
Różnica między elementami and
i or
Aby podkreślić różnicę między dwoma operatorami logicznymi, możesz użyć tabeli prawdy. Tabela prawdy pokazuje, co daje całe wyrażenie testowe na podstawie dwóch podexpressionów.
Oto tabela prawdy dla elementu and
:
subexpression1 |
Operator | subexpression2 |
Result |
---|---|---|---|
True |
and |
True |
True |
True |
and |
False |
False |
False |
and |
True |
False |
False |
and |
False |
False |
Oto tabela prawdy dla elementu or
:
subexpression1 |
Operator | subexpression2 |
Result |
---|---|---|---|
True |
or |
True |
True |
True |
or |
False |
True |
False |
or |
True |
True |
False |
or |
False |
False |