Python Operators

There are seven kinds of operators in Python. They are

  • Arithmetic Operators
  • Bitwise Operators
  • Assignment Operators
  • Comparison Operators / Relational Operators
  • Identity Operators
  • Membership Operators

In this tutorial, we will go through each of these operators with examples.

Arithmetic Operators

Arithmetic Operators are used to perform basic mathematical arithmetic operators like addition, subtraction, multiplication, etc. The following table lists out all the arithmetic operators in Python.

Operator SymbolDescriptionExample
+Additionx + y
Subtractionx – y
*Multiplicationx * y
/Divisionx / y
%Modulusx % y
**Exponentiationx ** y
//Floor divisionx // y
Python Arithmetic Operators

In the following program, we will take values for variables x and y, and perform arithmetic operations on these values using Python Arithmetic Operators.

Python Program

x = 5
y = 2

addition = x + y
subtraction = x - y
multiplication = x * y
division = x / y
modulus = x % y
exponentiation = x ** y
floor_division = x // y

print(f'x + y = {addition}')
print(f'x - y = {subtraction}')
print(f'x * y = {multiplication}')
print(f'x / y = {division}')
print(f'x % y = {modulus}')
print(f'x ** y = {exponentiation}')
print(f'x // y = {floor_division}')
Try Online

Output

x + y = 7
x - y = 3
x * y = 10
x / y = 2.5
x % y = 1
x ** y = 25
x // y = 2

Bitwise Operators

Bitwise Operators are used to perform bit level operations. The following table lists out all the bitwise operators in Python.

Operator SymbolDescriptionExample
&ANDx & y
|ORx | y
^XORx ^ y
~NOT~x
<<Zero fill left shiftx << y
>>Signed right shiftx >> y
Python Bitwise Operators

Python Program

# AND
x, y = 5, 2
print(x & y) # 0

# OR
x, y = 5, 2
print(x | y) # 7

# XOR
x, y = 5, 2
print(x ^ y) # 7

# NOT
x, y = 5, 2
print(~x) # -6

# Zero fill left shift
x, y = 5, 2
print(x << y) # 20

#Signed right shift
x, y = 5, 2
print(x >> y) # 1
Try Online

Assignment Operators

Assignment Operators are used to assign or store a specific value in a variable. The following table lists out all the assignment operators in Python.

Operator SymbolDescriptionExampleEquivalent to
=Assignmentx = y
+=Addition Assignmentx += yx = x + y
-=Subtraction Assignmentx -= yx = x – y
*=Multiplication Assignmentx *= yx = x * y
/=Division Assignmentx /= yx = x / y
%=Modulus Assignmentx %= yx = x % y
**=Exponentiation Assignmentx **= yx = x ** y
//=Floor-division Assignmentx //= yx = x // y
&=AND Assignmentx &= yx = x & y
|=OR Assignmentx |= yx = x | y
^=XOR Assignmentx ^= yx = x ^ y
<<=Zero fill left shift Assignmentx <<= yx = x << y
>>=Signed right shift Assignmentx >>= yx = x >> y
Python Assignment Operators

In the following program, we will take values for variables x and y, and perform assignment operations on these values using Python Assignment Operators.

Python Program

x, y = 5, 2
x += y
print(x) # 7

x, y = 5, 2
x -= y
print(x) # 3

x, y = 5, 2
x *= y
print(x) # 10

x, y = 5, 2
x /= y
print(x) # 2.5

x, y = 5, 2
x %= y
print(x) # 1

x, y = 5, 2
x **= y
print(x) # 25

x, y = 5, 2
x //= y
print(x) # 2

x, y = 5, 2
x &= y
print(x) # 0

x, y = 5, 2
x |= y
print(x) # 7

x, y = 5, 2
x ^= y
print(x) # 7

x, y = 5, 2
x <<= y
print(x) # 20

x, y = 5, 2
x >>= y
print(x) # 1
Try Online

Comparison Operators

Comparison Operators are used to compare two operands. The following table lists out all the Comparison operators in Python.

Operator SymbolDescriptionExample
==Equal tox == y
!=Not Equal tox != y
>Greater thanx > y
<Less thanx < y
>=Greater than or equal tox >= y
<=Less than or equal tox <= y
Python Comparison Operators

Python Program

# Equal to
x, y = 5, 2
print(x == y) # False

# Not equal	to
x, y = 5, 2
print(x != y) # True

# Greater than	
x, y = 5, 2
print(x > y) # True

# Less than	
x, y = 5, 2
print(x < y) # False

# Greater than or equal to	
x, y = 5, 2
print(x >= y) # True

# Less than or equal to
x, y = 5, 2
print(x <= y) # False
Try Online

Logical Operators

Logical Operators are used to combine simple conditions and form compound conditions. The following table lists out all the Logical operators in Python.

Operator SymbolDescriptionExample
andReturns True if both operands are True.x and y
orReturns True if any of the operands is True.x or y
notReturns the complement of given boolean operand.not x
Python Logical Operators

Python Program

# Logical AND
x, y = True, False
print(x and y) # False

# Logical OR
x, y = True, False
print(x or y) # True

# Logical NOT
x = True
print(not x) # False
Try Online

Identity Operators

Identity Operators are used to check if two variables point to same reference of an object in Python. The following table lists out the two Identity operators in Python.

Operator SymbolDescriptionExample
isReturns True if both operands refer to same object.x is y
is notReturns True if two operands refer to different objects.x is not y
Python Logical Operators

Two objects are said to have same reference, if they have same id. In the following program, we shall print the ids of x and y, along with the results of is and is not operators.

Python Program – x and y with same reference

x = [1, 2, 3]
y = x
print(x is y) # True
print(x is not y) # False
print(id(x))
print(id(y))
Try Online

Output

True
False
2284566373000
2284566373000

We have assigned the value of x to y. Now, both x and y store the reference to same object in memory. Therefore, x is y.

Python Program – x and y with different reference

# is operator
x = [1, 2, 3]
y = [1, 2, 3]
print(x is y) # True
print(x is not y) # False
print(id(x))
print(id(y))
Try Online

Output

False
True
1961841222280
1961841222344

Even though the list elements are same, x and y are assigned with two different list objects. Hence, the ids are different for x and y and therefore x is not y, in this case.

Membership Operators

Membership Operators are used to check if an element or item is present in the given collection or sequence. The following table lists out the two Membership operators in Python.

Operator SymbolDescriptionExample
inReturns True if element (x) is present in sequence (y).x in y
not inReturns True if element (x) is not present in sequence (y).x not in y
Python Logical Operators

Python Program

# in operator
x = 1
y = [1, 2, 3]
print(x in y) # True

# not in operator
x = 8
y = [1, 2, 3]
print(x not in y) # True
Try Online

Conclusion

In this Python Tutorial, we learned about different kinds of Operators in Python: Arithmetic, Bitwise, Assignment, Comparison, Logical, Identity and Membership.