Логические операции в Python

Как быть в ситуации, когда у нас есть несколько условий? В Python есть три логических оператора, которые позволяют создавать сложные условия:

and — логическое умножение;

or — логическое сложение;

not — логическое отрицание.

Предположим, мы написали программу для учеников от двенадцати лет, которые учатся по крайней мере в 7 классе. Доступ к ней тем, кто младше, надо запретить. Следующий код решает поставленную задачу:

Мы объединили два условия при помощи оператора and. Оно означает, что в этом ветвлении блок кода выполняется только при выполнении обоих условий одновременно!

Оператор or также применяется для объединения условий. Однако, в отличие от and, для выполнения блока кода достаточно выполнения хотя бы одного из условий.

Доступ будет разрешен в случае, если хотя бы одно из условий выполнится. Это таблица истинности для оператора or. В ней перечислены выражения, соединённые оператором or, показаны все возможные комбинации истинности и ложности и приведены результирующие значения выражений.

Оператор not позволяет инвертировать (т.е. заменить на противоположный) результат логического выражения.

Таблица истинности для оператора not: