Что такое операторы "and" и "or"?

Завершено

Иногда может потребоваться комбинировать тестовые выражения для вычисления нескольких условий в одной инструкции if, elif или else. В этом случае можно использовать логические операторы and и or.

Оператор or.

С помощью логического оператора or можно связать два логических или тестовых выражения. Чтобы вычисление всего выражения давало True, хотя бы одна часть выражения была истинной. Если ни одна из частей выражения не является истинной, то все выражение целиком дает значение False. Например, в следующем выражении все тестовое выражение дает значение True, так как выполнено одно из условий в части выражения:

a = 23
b = 34
if a == 34 or b == 34:
    print(a + b)

Если обе части выражения являются истинными, то все тестовое выражение также принимает значение True.

Логическое выражение, использующееor, имеет следующий синтаксис:

sub-expression1 or sub-expression2

Оператор and.

Можно также связать два тестовых выражения с помощью логического оператора and. Оба условия в тестовом выражении должны выполняться, чтобы все тестовое выражение давало при вычислении значение True. В любом другом случае тестовое выражение равно False. В следующем примере все тестовое выражение дает значение False, так как выполнено лишь одно из условий в части выражения:

a = 23
b = 34
if a == 34 and b == 34:
    print (a + b)

Логическое выражение, использующееand, имеет следующий синтаксис:

sub-expression1 and sub-expression2

Разница между and и or

Чтобы наглядно изучить разницу между двумя логическими операторами, можно использовать таблицу истинности. Таблица истинности показывает результат вычисления всего тестового выражения на основе двух частей выражения.

Ниже приведена таблица истинности для and:

subexpression1 Оператор subexpression2 Результат
True and True True
True and False False
False and True False
False and False False

Ниже приведена таблица истинности для or:

subexpression1 Оператор subexpression2 Результат
True or True True
True or False True
False or True True
False or False False