python модуль - Что делает оператор ^(XOR)?




пакет math (3)

XOR является двоичной операцией, она означает «эксклюзивный» или «то есть», то есть полученный бит оценивается как один, если задан только один из битов.

Это его таблица функций:

a | b | a ^ b
--|---|------
0 | 0 | 0
0 | 1 | 1
1 | 0 | 1
1 | 1 | 0

Эта операция выполняется между каждыми двумя соответствующими битами числа.

Пример: 7 ^ 10
В двоичном формате: 0111 ^ 1010

  0111
^ 1010
======
  1101 = 13

Свойства: Операция является коммутативной, ассоциативной и самообратной.

Это также то же самое, что и дополнение по модулю 2.

Какую математическую операцию выполняет XOR?


^ является побитовым XOR-оператором Python . Это то, как вы пишете XOR в python:

>>> 0 ^ 0
0
>>> 0 ^ 1
1
>>> 1 ^ 0
1
>>> 1 ^ 1
0

XOR обозначает исключительное ИЛИ . Он используется в криптографии, потому что он позволяет вам «переворачивать» биты с использованием маски в обратимой операции:

>>> 10 ^ 5
15
>>> 15 ^ 5
10

где 5 - маска; (входная маска XOR) Маска XOR снова дает вам вход.


Создайте файл, a.py :

print(__name__) # It will print out __main__

__name__всегда равно __main__всякий раз, когда этот файл запускается напрямую, показывая, что это основной файл.

Создайте другой файл, b.py , в том же каталоге:

import a  # Prints a

Запустить его. Он напечатает , то есть имя файла , который импортируется .

Итак, чтобы показать два разных поведения одного и того же файла , это обычно используемый трюк:

# Code to be run when imported into another python file

if __name__ == '__main__':
    # Code to be run only when run directly






python math