Операторы and, or и not используются для комбинирования или изменения логических выражений.
and: Возвращает True, если оба операнда истинны. В противном случае возвращает False. При коротком замыкании, если левый операнд ложный, правый не вычисляется.
python
or: Возвращает True, если хотя бы один из операндов истинен. Возвращает False только если оба операнда ложны. При коротком замыкании, если левый операнд истинный, правый не вычисляется.
python
not: Отрицает логическое значение операнда. Возвращает True, если операнд ложный, и False, если операнд истинный.
python
Помимо булевых значений (True и False), эти операторы также работают с другими типами данных, используя их "истинность" или "ложность" в булевом контексте:
None: ложный.При вычислении and и or Python возвращает не только True или False, но и один из операндов (короткое замыкание):
a and b: Если a ложно, возвращает a. Иначе возвращает b.
python
a or b: Если a истинно, возвращает a. Иначе возвращает b.
python
Это поведение важно для условных выражений и назначения значений по умолчанию.