Python Glossary English

все Python 3operatorфункция

operator.and_

битовые

Побитовое И: a & b (подчёркивание в имени — чтобы не совпасть с ключевым словом `and`).

Синтаксис

operator.and_(a, b)

Это побитовое &, а не логическое and: оба аргумента вычисляются всегда, короткого замыкания нет, и результат другой — and_(2, 1) даёт 0, а 2 and 1 даёт 1. Для множеств and_ — пересечение, для bool — логическое И без замыкания. Чтобы проверить, что истинны все элементы, нужна all(), а не reduce с and_.

Примеры

import operator
import functools
print(operator.and_(5, 3))   # → 1
print(operator.and_(5, 3) == 5 & 3)   # → True
print(operator.and_(2, 3) == (2 and 3))   # → False
print(functools.reduce(operator.and_, [0b1110, 0b1011, 0b0111]))   # → 2
print(operator.and_(True, False))   # → False

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности