Книга: Введение в Python

Побитовые операторы в Python:

Побитовые операторы в Python:

Побитовые операторы предназначены для работы с данными в битовом (двоичном) формате. Предположим, что у нас есть два числа a = 60; и b = 13. В двоичном формате они будут иметь следующий вид:

a = 0011 1100

b = 0000 1101

Оператор

Описание

Примеры

&

Бинарный "И" оператор, копирует бит в результат только если бит присутствует в обоих операндах.

(a & b) даст нам 12, которое в двоичном формате выглядит так 0000 1100

|

Бинарный "ИЛИ" оператор копирует бит, если тот присутствует в хотя бы в одном операнде.

(a | b) даст нам 61, в двоичном формате 0011 1101

^

Бинарный "Исключительное ИЛИ" оператор копирует бит только если бит присутствует в одном из операндов, но не в обоих сразу.

(a ^ b) даст нам 49, в двоичном формате 0011 0001

~

Бинарный комплиментарный оператор. Является унарным (то есть ему нужен только один операнд) меняет биты на обратные, там где была единица становиться ноль и наоборот.

(~a ) даст в результате -61, в двоичном формате выглядит 1100 0011.

<<

Побитовый сдвиг влево. Значение левого операнда "сдвигается" влево на количество бит указанных в правом операнде.

a << 2 в результате даст 240, в двоичном формате 1111 0000

>>

Побитовый сдвиг вправо. Значение левого операнда "сдвигается" вправо на количество бит указанных в правом операнде.

a >> 2 даст 15, в двоичном формате 0000 1111

Оглавление книги


Генерация: 0.102. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз