Python Bitwise XOR Operator and its Uses

In this article, we will learn about the XOR operator and its uses in Python programming.

Operators are used in a programming language to perform operations on values at the level of individual bits. Some examples of bitwise operators are AND, OR, not, and XOR. Since all these operators work on individual bits, it is called bitwise operators.

In Python, the bitwise operator is also called the binary operator and it is used to perform various bitwise calculations on integers. The operators first convert the integers into binary format and then perform calculation bit by bit.

XOR Operator in Python

In Python, the XOR operator is known as the “exclusive or” operator which is used to compare two binary numbers bitwise.

The XOR operator, if both the input values are the same it returns 0, and if the input values are different it outputs 1. We can also use the XOR operator on booleans.

The XOR operator is represented as ^ between two values (operands) to perform bitwise “exclusive or” calculations.

Syntax:

a ^ b

Here is a truth table of XOR operator.

aba^b
000
011
101
110

Now, let’s see some examples to find XOR values of integers in Python.

Find XOR value of two numbers in Python

Let’s find out the value of two integers using the XOR operators in this example. When we perform an XOR operation between two numbers it gives the output as an integer.

Example

a = 6 #0110
b = 3 #0011

print(a ^ b)

Output:

5 #(0101)

Here, first, the program converts the numbers into their binary format ie. for 6 (0110) and 3 (0011), and then using the XOR operator it calculates the output ie. 5 (0101) bit by bit.

Here is a demonstration to understand the calculation of the binary numbers using the XOR truth table.

Python Bitwise XOR operator

Compare boolean using XOR in Python

We can use the XOR operator on boolean values too. In the case of a boolean, the True is treated as 1 and False is treated as 0.

When we compare two booleans in XOR the output is also a boolean value.

So the truth table for boolean would be like this.

aba^b
FalseFalseFalse
FalseTrueTrue
TrueFalseTrue
TrueTrueFalse

Example of XOR boolean value in python

print(False ^ False)
print(False ^ True)
print(True ^ False)
print(True ^ True)

Output:

False
True
True
False

Using Operator Module in Python

We can also use the in-built operator module to perform XOR operations in Python. It provides the xor() functions which can perform operations on integers and booleans.

Example:

import operator

print(operator.xor(6,3))
print(operator.xor(False,False))
print(operator.xor(False,True))

Output:

5
False
True

Here, we just have to pass the values as parameters to the xor() function and it returns the output according to the data type of the value (integer or boolean).

Conclusion : In this article, we have learned about the logical operator, the bitwise binary XOR operator, and how we can use it in python to compare and perform bitwise calculations on numbers and booleans.

Scroll to Top