We now have a youtube channel. Subscribe!

# Python Operators

Hello dear readers! Welcome back to another edition of our tutorial on Python. In this tutorial guide, we will be studying about the Python operators.

Operators are construct which can be used in manipulating the values of operands.

Consider the expression 6 + 4 = 10. Here, 6 and 4 are called operands and + is called operator.

# Types of Operators in Python

Following below are the operators supported by Python -

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

Now, we will be discussing about all the listed Operators one after the other.

# Python Arithmetic Operators

Assume variable a holds 10 and variable b holds 20, then -

OperatorDescriptionExample
+ AdditionAdds values on either side of the operator.a + b = 30
- SubtractionSubtracts right hand operand from left hand operand.a – b = -10
* MultiplicationMultiplies values on either side of the operatora * b = 200
/ DivisionDivides left hand operand by right hand operandb / a = 2
% ModulusDivides left hand operand by right hand operand and returns remainderb % a = 0
** ExponentPerforms exponential (power) calculation on operatorsa**b =10 to the power 20
//Floor Division - The division of operands where the result is the quotient in which the digits after the decimal point are removed. But if one of the operands is negative, the result is floored, i.e., rounded away from zero (towards negative infinity) −9//2 = 4 and 9.0//2.0 = 4.0, -11//3 = -4, -11.0//3 = -4.0

# Example

Assume variable a holds 21 and variable b holds 10, then -

```#!/usr/bin/python

a = 21
b = 10
c = 0

c = a + b
print "Line 1 - Value of c is ",  c

c = a - b
print "Line 2 - Value of c is ",  c

c = a * b
print "Line 3 - Value of c is ",  c

c = a / b
print "Line 4 - Value of c is ",  c

c = a % b
print "Line 5 - Value of c is ",  c

a = 2
b = 3
c = a**b
print "Line 6 - Value of c is ",  c

a = 10
b = 5
c = a//b
print "Line 7 - Value of c is ",  c```

# Output

Below is the output of the above example -

```Line 1 - Value of c is 31
Line 2 - Value of c is 11
Line 3 - Value of c is 210
Line 4 - Value of c is 2
Line 5 - Value of c is 1
Line 6 - Value of c is 8
Line 7 - Value of c is 2```

RECOMMENDED POST: Python Basic Syntax Tutorial

## Python Relational Operator

This Python operators compares the values on either sides of them and decides the relation amongs them.

Assume variable a holds 10 and variable b holds 20, then -

OperatorDescriptionExample
==If the values of two operands are equal, then the condition becomes true.(a == b) is not true.
!=If values of two operands are not equal, then condition becomes true.(a != b) is true.
<>If values of two operands are not equal, then condition becomes true.(a <> b) is true. This is similar to != operator.
>If the value of left operand is greater than the value of right operand, then condition becomes true.(a > b) is not true.
<If the value of left operand is less than the value of right operand, then condition becomes true.(a < b) is true.
>=If the value of left operand is greater than or equal to the value of right operand, then condition becomes true.(a >= b) is not true.
<=If the value of left operand is less than or equal to the value of right operand, then condition becomes true.(a <= b) is true

## Example

Assume variable a holds 10 and variable b holds 20, then -

```#!/usr/bin/python

a = 21
b = 10
c = 0

if ( a == b ):
print "Line 1 - a is equal to b"
else:
print "Line 1 - a is not equal to b"

if ( a != b ):
print "Line 2 - a is not equal to b"
else:
print "Line 2 - a is equal to b"

if ( a <> b ):
print "Line 3 - a is not equal to b"
else:
print "Line 3 - a is equal to b"

if ( a < b ):
print "Line 4 - a is less than b"
else:
print "Line 4 - a is not less than b"

if ( a > b ):
print "Line 5 - a is greater than b"
else:
print "Line 5 - a is not greater than b"

a = 5;
b = 20;
if ( a <= b ):
print "Line 6 - a is either less than or equal to  b"
else:
print "Line 6 - a is neither less than nor equal to  b"

if ( b >= a ):
print "Line 7 - b is either greater than  or equal to b"
else:
print "Line 7 - b is neither greater than  nor equal to b"```

## Output

Below is the output of the above example -

```Line 1 - a is not equal to b
Line 2 - a is not equal to b
Line 3 - a is not equal to b
Line 4 - a is not less than b
Line 5 - a is greater than b
Line 6 - a is either less than or equal to b
Line 7 - b is either greater than or equal to b```

## Python Assignment Operator

Assume variable a holds 10 and variable b holds 20, then -

OperatorDescriptionExample
=Assigns values from right side operands to left side operandc = a + b assigns value of a + b into c
+= Add ANDIt adds right operand to the left operand and assign the result to left operandc += a is equivalent to c = c + a
-= Subtract ANDIt subtracts right operand from the left operand and assign the result to left operandc -= a is equivalent to c = c - a
*= Multiply ANDIt multiplies right operand with the left operand and assign the result to left operandc *= a is equivalent to c = c * a
/= Divide ANDIt divides left operand with the right operand and assign the result to left operandc /= a is equivalent to c = c / a
%= Modulus ANDIt takes modulus using two operands and assign the result to left operandc %= a is equivalent to c = c % a
**= Exponent ANDPerforms exponential (power) calculation on operators and assign value to the left operandc **= a is equivalent to c = c ** a
//= Floor DivisionIt performs floor division on operators and assign value to the left operandc //= a is equivalent to c = c // a

## Example

Assume variable a holds 10 and variable b holds 20, then -

```#!/usr/bin/python

a = 21
b = 10
c = 0

c = a + b
print "Line 1 - Value of c is ", c

c += a
print "Line 2 - Value of c is ", c

c *= a
print "Line 3 - Value of c is ", c

c /= a
print "Line 4 - Value of c is ", c

c  = 2
c %= a
print "Line 5 - Value of c is ", c

c **= a
print "Line 6 - Value of c is ", c

c //= a
print "Line 7 - Value of c is ", c```

## Output

Below is the output of the above example -

```Line 1 - Value of c is 31
Line 2 - Value of c is 52
Line 3 - Value of c is 1092
Line 4 - Value of c is 52
Line 5 - Value of c is 2
Line 6 - Value of c is 2097152
Line 7 - Value of c is 99864```

### Python Logical Operator

The following below is the lists of logical operators that is supported by Python. Assume that variable a holds 10 and variable b holds 20, then -

OperatorDescriptionExample
and Logical ANDIf both the operands are true then condition becomes true.(a and b) is true.
or Logical ORIf any of the two operands are non-zero then condition becomes true.(a or b) is true.
not Logical NOTUsed to reverse the logical state of its operand.Not(a and b) is false.

#### Python Bitwise Operator

Bitwise Operators in Python works only on bits as well as performing bit by bit operations. Assume if a = 60; and b = 13; Now in the binary format, their values will be 0011 1100 and 0000 1101 respectively.

The following is the lists of bitwise operators supported by Python with example for each of them. We used the above two variables (a and b) as our operands -

a = 0011 1100
b = 0000 1101

-----------------------

a%b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011

The following is the lists of bitwise operators supported by Python -

OperatorDescriptionExample
& Binary ANDOperator copies a bit to the result if it exists in both operands(a & b) (means 0000 1100)
| Binary ORIt copies a bit if it exists in either operand.(a | b) = 61 (means 0011 1101)
^ Binary XORIt copies the bit if it is set in one operand but not both.(a ^ b) = 49 (means 0011 0001)
~ Binary Ones ComplementIt is unary and has the effect of 'flipping' bits.(~a ) = -61 (means 1100 0011 in 2's complement form due to a signed binary number.
<< Binary Left ShiftThe left operands value is moved left by the number of bits specified by the right operand.a << 2 = 240 (means 1111 0000)
>> Binary Right ShiftThe left operands value is moved right by the number of bits specified by the right operand.a >> 2 = 15 (means 0000 1111)

#### Example

Assume that variable a holds 60 and variable b holds 13 and variable c holds 0, then -

```#!/usr/bin/python

a = 60            # 60 = 0011 1100
b = 13            # 13 = 0000 1101
c = 0

c = a & b;        # 12 = 0000 1100
print "Line 1 - Value of c is ", c

c = a | b;        # 61 = 0011 1101
print "Line 2 - Value of c is ", c

c = a ^ b;        # 49 = 0011 0001
print "Line 3 - Value of c is ", c

c = ~a;           # -61 = 1100 0011
print "Line 4 - Value of c is ", c

c = a << 2;       # 240 = 1111 0000
print "Line 5 - Value of c is ", c

c = a >> 2;       # 15 = 0000 1111
print "Line 6 - Value of c is ", c```

#### Output

Below is the output of the above example -

```Line 1 - Value of c is 12
Line 2 - Value of c is 61
Line 3 - Value of c is 49
Line 4 - Value of c is -61
Line 5 - Value of c is 240
Line 6 - Value of c is 15```

RECOMMENDED POST: Python Basic Syntax Tutorial

##### Python Membership Operator
Python membership operator tests for membership in sequence, such as string, lists, or turple. There are two memberships that is available as explained below -

OperatorDescriptionExample
inEvaluates to true if it finds a variable in the specified sequence and false otherwise.x in y, here in results in a 1 if x is a member of sequence y.
not inEvaluates to true if it does not finds a variable in the specified sequence and false otherwise.x not in y, here not in results in a 1 if x is not a member of sequence y.

##### Example
Assume variable a holds 10 and variable b holds 20, then -

```#!/usr/bin/python

a = 10
b = 20
list = [1, 2, 3, 4, 5 ];

if ( a in list ):
print "Line 1 - a is available in the given list"
else:
print "Line 1 - a is not available in the given list"

if ( b not in list ):
print "Line 2 - b is not available in the given list"
else:
print "Line 2 - b is available in the given list"

a = 2
if ( a in list ):
print "Line 3 - a is available in the given list"
else:
print "Line 3 - a is not available in the given list"```

##### Output
Below is the output of the above example -

```Line 1 - a is not available in the given list
Line 2 - b is not available in the given list
Line 3 - a is available in the given list```

##### Python Identify Operators
The identify operators in Python compares the memory location of two objects. There are two identify operators that is explained below -

OperatorDescriptionExample
isEvaluates to true if the variables on either side of the operator point to the same object and false otherwise.x is y, here is results in 1 if id(x) equals id(y).
is notEvaluates to false if the variables on either side of the operator point to the same object and true otherwise.x is not y, here is not results in 1 if id(x) is not equal to id(y).

##### Example
Assume variable a holds 20 and variable b holds 20, then -

```#!/usr/bin/python

a = 20
b = 20

if ( a is b ):
print "Line 1 - a and b have same identity"
else:
print "Line 1 - a and b do not have same identity"

if ( id(a) == id(b) ):
print "Line 2 - a and b have same identity"
else:
print "Line 2 - a and b do not have same identity"

b = 30
if ( a is b ):
print "Line 3 - a and b have same identity"
else:
print "Line 3 - a and b do not have same identity"

if ( a is not b ):
print "Line 4 - a and b do not have same identity"
else:
print "Line 4 - a and b have same identity"```

##### Output
Below is the output of the above example -

```Line 1 - a and b have same identity
Line 2 - a and b have same identity
Line 3 - a and b do not have same identity
Line 4 - a and b do not have same identity```

Alright guys! This is where we are rounding up for this tutorial. In our next tutorial, we will be discussing about Python Decision making.

Do feel free to ask your questions where necessary and i will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.

Follow us on our various social media platforms to stay updated with our latest tutorials. You can also subscribe to our newsletter in order to get our tutorials delivered directly to your emails.

Thanks for reading and bye for now.