Бінарні побітові операції

Оновлено: 24.04.2023

Кожна з трьох побітових операцій має різний рівень пріоритету:

and_expr ::=  shift_expr | and_expr "&" shift_expr
xor_expr ::=  and_expr | xor_expr "^" and_expr
or_expr  ::=  xor_expr | or_expr "|" xor_expr

Оператор & повертає порозрядне І своїх аргументів, які мають бути цілими числами або один із них має бути спеціальним об’єктом, що перекриває спеціальні методи __and__() або __rand__().

Оператор ^ повертає порозрядне XOR (виключаюче АБО) своїх аргументів, які мають бути цілими числами або один із них має бути спеціальним об’єктом, що перекриває спеціальні методи __xor__() або __rxor__().

Оператор | повертає порозрядне (включне) АБО своїх аргументів, які мають бути цілими числами або один із них має бути спеціальним об’єктом, що перекриває спеціальні методи __or__() або __ror__().