Python Operators

In this section, Python operators will be discussed with the help of example codes.

Operators are the special symbols to perform specific tasks on operands (values or variables) for example when you write a+b, here + is an operator which operates on variables a and b and these variables are called operands.

The following are some of the types of Python operators:

Python Arithmetic Operators:

Arithmetic operators perform arithmetic (mathematical) operations on variables such as addition, subtraction, multiplication, etc.

Consider the following table in which Python arithmetic operators are described along with examples:

Operator Description Example
+ used to add to values. You can also use as unary + operator a + b, +a
- used to subtract a value from another. It can also be used as unary - operator a - b, -a
* used to multiply two numbers a * b
/ used to divide one value by another. division will always return float data type. a / b
% used to return the remainder of division on two operands. a % b
// It is called floor division which returns a whole number a // b
** It is exponent meaning left operand raise to the power of right operand a ** b

Python Arithmetic Operators Example:

In the following code, arithmetic operators are used on two operands:

a = 24
b = 7
print('a + b =', a+b)
print('a - b =', a-b)
print('a * b =', a*b)
print('a / b =', a/b)
print('a // b =', a//b)
print('a ** b =', a**b)
a + b = 31
a - b = 17
a * b = 168
a / b = 3.4285714285714284
a // b = 3
a ** b = 4586471424

You can see here, division returned a floating point value but floor division returned whole number.

Python Comparison Operators:

Comparison operators compares two or more values. The result obtained after applying comparison operators is either True or False based on the condition.

The following are the comparison operators in Python programming:

Operator Description Example
> Greater than operator which returns true when value of left operand is greater than value of right operand. a > b
< Less than operator which returns true when value of left operand is less than value of right operand. a < b
== Equals to operator returns true when values of both operands are equal a == b
!= Not equal to operator returns true when values of operands are not equal a != b
>= Greater than equal to operator which returns true when value of left operand is greater than or equal to value of right operand. a >= b
<= Less than or equal to operator which returns true when value of left operand is less than or equal to value of right operand. a <= b

Python Comparison Operators Example:

Consider the code below in which comparison operators are used:

a = 12
b = 24
print('a > b =', a>b)
print('a < b =', a<b)
print('a == b =', a==b)
print('a != b =', a!=b)
print('a >= b =', a>=b)
print('a <= b =', a<=b)
a > b = False
a < b = True
a == b = False
a != b = True
a >= b = False
a <= b = True

Python Logical Operators:

Logical operators in Python include and, or and not.

Operator Description Example
and results in true only when both operands (or conditions) are true a and b
or results in true when any of the operands is true a or b
not takes complement of the operand (true to false, false to true) not a

Python Logical Operators Example:

Consider the following example in which logical operators are used:

a = False
b = True
print('a and b =', a and b)
print('a or b =', a or b)
print('not b =', not b)
a and b = False
a or b = True
not b = False

Python Bitwise Operators:

Bitwise operators performs bit by bit operations. The operands are considered to be binary digits on which bitwise operations are performed.

Consider an example where we have a = 4 (100 in binary) and b = 5 (101 in binary):

Operator Description Example
& Bitwise AND operator which results in 1 when bits of both operands are 1 a &b = 4
| Bitwise OR operator which results in 1 if one of the bits of operands is 1. a | b = 5
~ Negation, takes two’s complement. ~a = -5
^ Bitwise XOR operator results in 1 when the bits of operands are different. `a^b= 1
>> Bitwise right shifting will shift the bits to right side by specified number of times. a >>2= 1
<< Bitwise left shifting will shift the bits to left side by specified number of times. a << 2 =16

Python Assignment Operators:

Assignment operator = assigns values to variables. Assignment operator initializes a variable for example x = 1 is an assignment statement which assigns 1 to x.

In Python, there are compound assignment operators that are the combination of arithmetic operators and the assignment operator and sometimes a combination of bitwise and assignment operators.

For example, x += 2 is a compound assignment statement in which 2 is added to actual value of variable x and the result is stored in variable x.

The following table demonstrates compound assignment statements:

Operator Example Equivalent to
= a = 8 a = 8
+= a += 8 a = a + 8
-= a -= 8 a = a - 8
*= a *= 8 a = a * 8
/= a /= 8 a = a / 8
%= a %= 8 a = a % 8
//= a //= 8 a = a // 8
**= a **= 8 a = a ** 8
&= a &= 8 a = a & 8
|= a |= 8 a = a | 8
^= a ^= 8 a = a ^ 8
>>= a >>= 8 a = a >> 8
<<= a <<= 8 a = a << 8

Python Special operators:

In Python programming, there are some operators that have a special meaning and are called special operators for example membership operator, identity operators, etc.

Python Identity Operators:

In Python the operators is and is not are called identity operators. The identity operators are used to determine if two variables lie in the same part of memory. So two variables to be equal and two variables to be identical are two different statements.

Operator Description
is returns true when variables are identical (variables referring to same objects)
is not returns true when variables are not identical (variables not referring to same objects)

Python Identity Operators Example:

Consider the code below:

a = 3
b = 3
print(a is b)
print(a is not b)
True
False

In this example, variables a and b have same values and you can see that they are identical as well.

Python Membership Operators:

In Python the operators in and not in are called membership operators. The membership operators are used to determine if variables lie in a sequence (list, tuple, string and dictionary) or not.

You can do dictionary membership operation for thekey in dictionary and not the value.

Operator Description
in return true when value is present in the sequence
not in return true when value is not present in the sequence

Python Membership Operators Example:

Consider the code below:

a = 'Python Programming'
print('y' in a)
print('b' not in a)
print('b' in a)
True
True
False

In this code, y is present in the sequence (string) so True is returned. Similarly, b is not present in a so again True is returned as not in is used. The False is returned as b is not in a and in operator is used.