Python Operators

Operators in Python programming

An operator is a symbol that operates on one or more operands. An operand is a value or a variable on which we perform the operation. Consider the example 6+9, Here 6 and 9 are called operands and + is called operator. Python provides many operators described as follows:

  • Arithmetic Operators
  • Assignment Operators
  • Comparison Operators
  • Logical Operators
  • Membership Operators
  • Bitwise Operators
  • Identity Operators

Arithmetic Operator

The Python Arithmetic operators are used to perform basic mathematical operations. The Arithmetic operators are given in below list. Suppose x and y are two variable with values x=30 and y=10 and the result of the operation is also given in below list:

Operators Description Example
+ (Addition) It is used to add two operands. x + y =40
(Subtraction) It is used to subtract two operands. It will give the negative value if the first operand is less than the second operand. x – y =20 or y – x = -20
* (Multiplication) It is used to multiply the value on either side of operators. x * y = 300
/ (Divide) It divides the first operand by the second operand and returns the quotient. x/y = 3.0
// (Floor Division) It is used to divide and returns the integer value of the quotient.  x//y=3 or x=30 y=7 then x//y=4
% (Modulus) It returns reminder after division. x//y = 0
**(Exponent) It is used to calculate the power of the first operand. x = 5, y = 2 then x ** 2 = 25

Assignment Operators:

The assignment operator is used to assign the value of the right operand to the left operand. The list of assignment operators is given below. Suppose we provide x = 20 and y = 10 then results are following:

Operator Description Examples
= Assigns value of the right expression to the left operand. x = 20
+= It is used to add the value on either side and assign expression on the left side. Result is assigned to the right operand. x+=y is equal to x=x + y therefore x = 30
-= It is used to subtract the value on either side and assign expression on the left side. Result is assigned to the right operand. x-=y is equal to x=x – y therefore x = 10
*= It multiplies the operands and modifies value assigned to right operand. x*=y is equal to x = x*y therefore x = 200
/= It divides the operands and modifies value assigned to right operand. x/=y is equal to x = x/y therefore x = 2.0
%= It calculates the modulus of the values on either side. And assigns result to the expression on the left. x%=y is equal to x = x% y therefore x = 0
**= It evaluates exponential (power) calculation on operators and assigns value to the left operand x=20,y=2  x**=2 is equal to x=x**y therefore x=400
//= It performs floor division on operators and assign value to the left operand x//=y is equal to x = x//y therefore x = 2

Comparison operators

Python provides a few comparison operators which are commonly used to compare the value of the two operands.The comparison of these value returns Boolean true or false. These operators are described in the below table. We have assigned x=10 and y= 15.

Operators Description Examples
== It returns true if the values of the two operands are equal. x==y is False
!= It returns false if the values of the two operands are not equal. x!=y is True
<= If the left operand is less than or equal to the right operand, then it will evaluate True x<=y is True
>= If the left operand is greater than or equal to the right operand, then it evaluates True x>=y is False
<>  This operator is similar to !=(not equal) x<>y is True
If the left operand is greater than the right operand, then it evaluates True x>y is False
If the right operand is greater than the  left operand, then it evaluates True x<y is True

Logical Operators

There are three logical operators and, or and not which are used in the conditional statement.

Operators Description Examples
and The condition becomes true if both expressions are true. True and False= False
or The condition becomes true if any expression is true. True or False= True
not If an expression x is true then not(x) will be false or vica versa. not(True)= False

Membership Operators

Membership operators are used to check whether a particular element is a member of a sequence such as string, list, tuple etc. There are two membership operators described in the below table:

Operator Description Examples
in It is evaluated to be true if an element on left side present in the given right side sequence 3 in [1,3,4]=True
not in It is evaluated to be false if an element on the left side is present in the given right side sequence 3 not in [1,3,5]=False

Bitwise Operators

Bitwise Operators perform binary operation on operands bit by bit. Let’s see the example: The variable a is assigned 5 and b is assigned 6 then

Operator Description Examples
~(Complement) This operator converts the number into a binary number and return it’s one’s complement or flip the bits. ~x is equivalent to –x-1. a=~5 is evaluated –6
&(Binary and) If both the bits at the same place are 1 then  the result is 1 otherwise result is 0 a=0101, b=0110 a&b =0100
|(Binary or) If both the bits at the same place are 0 then  the result is 1 otherwise result is 0 a=0101, b=0110 a|b =0111
^(Binary Xor) If both bits are different then the result will be 1 otherwise the result will be 0 a= 0101, b=0110 a^b=0011
<<(Binary Left Shift) The left operand value is shifted left by the number of bits given in the right operand.  a<<2 = 0010100
>>(Binary Right Shift) The left operand value is shifted right by the number of bits given in the right operand. a>>2=0001

Identity Operators

The identity operators are following:

Operator Description Examples
is If the both operators are referred to same object then it evaluates true. a = 5, b=5 a is b =True
is not If the both operators are referred to same object then it evaluates false. a = [1,2,3], b =[1,2,3] a is not b =True

Operator precedence

It is important to know about the precedence of the operator.

Operator Precedence (Decreasing Order) Description
** The Exponential  have the highest priority
~ + – Complement, unary plus and minus
* / % // Multiply, divide, modulo and floor division
+ – Addition and subtraction
>> << Right and left bitwise shift
& Bitwise ‘AND’
^ | Bitwise OR' and regular OR’
<= < > >= Comparison operators
<> == != Equality operators
= %= /= //= -= += *= **= Assignment operators
is is not Identity operators
in not in Logical operators
not or and Logical operators