Ключевые различия между операторами not, and и or в Python:
- Оператор not инвертирует логическое значение операнда, то есть возвращает True, если операнд ложный, и False, если операнд истинный. 3 В отличие от операторов and и or, оператор not всегда возвращает булев объект. 2
- Оператор and возвращает True, если оба операнда истинны, иначе возвращает False. 3
- Оператор or возвращает True, если хотя бы один из операндов истинный, иначе возвращает False. 3
Таким образом, оператор not меняет значение на противоположное, а операторы and и or возвращают результат в зависимости от условий выражения:
- and: если условия с двух сторон оператора истинны, тогда всё выражение целиком считается истинным. 1
- or: выражение ложно, если оба операнда с двух сторон ложные. 1 Если хотя бы одно из них истинное, то и всё выражение истинно. 1