OPERATORS IN PYTHON PROGRAMMING
PART I
Prepared By
P. K. Nakhate
OPERATORS
Python operators are the constructs which can manipulate the value of operands. These are symbols used for the purpose of logical, arithmetic and various other operations.
Consider the expression 4 + 5 = 9. Here, 4 and 5 are called operands and + is called operator.
Types of Operators
Python Arithmetic Operators
Python arithmetic operators are used to perform mathematical operations on numerical values. These operations are Addition, Subtraction, Multiplication, Division, Modulus, Expoents and Floor Division.
Operators | Operations | Example |
+ | Addition | 10 + 20 = 30 |
- | Subtraction | 20 – 10 = 10 |
* | Multiplication | 10 * 20 = 200 |
/ | Division | 20 / 10 = 2 |
% | Modulus | 22 % 10 = 2 |
** | Exponent | 4**2 = 16 |
// | Floor Division | 9//2 = 4 |
Python Comparison Operators
Python comparison operators compare the values on either sides of them and decide the relation among them. They are also called relational operators. These operators are equal, not equal, greater than, less than, greater than or equal to and less than or equal to.
Operator | Name | Example |
== | Equal | 4 == 5 is not true. |
!= | Not Equal | 4 != 5 is true. |
> | Greater Than | 4 > 5 is not true. |
< | Less Than | 4 < 5 is true. |
>= | Greater than or Equal to | 4 >= 5 is not true. |
<= | Less than or Equal to | 4 <= 5 is true. |
Python Assignment Operators
Python assignment operators are used to assign values to variables. These operators include simple assignment operator, addition assign, subtraction assign, multiplication assign, division and assign operators etc.
Operator | Name | Example |
= | Assignment Operator | a = 10 |
+= | Addition Assignment | a += 5 (Same as a = a + 5) |
-= | Subtraction Assignment | a -= 5 (Same as a = a - 5) |
*= | Multiplication Assignment | a *= 5 (Same as a = a * 5) |
/= | Division Assignment | a /= 5 (Same as a = a / 5) |
%= | Remainder Assignment | a %= 5 (Same as a = a % 5) |
**= | Exponent Assignment | a **= 2 (Same as a = a ** 2) |
//= | Floor Division Assignment | a //= 3 (Same as a = a // 3) |
Python Bitwise Operators
Bitwise operator works on bits and performs bit by bit operation. Assume if a = 60; and b = 13; Now in the binary format their values will be 0011 1100 and 0000 1101 respectively. Following table lists out the bitwise operators supported by Python language with an example each in those, we use the above two variables (a and b) as operands −
a = 0011 1100
b = 0000 1101
--------------------------
a&b = 12 (0000 1100)
a|b = 61 (0011 1101)
a^b = 49 (0011 0001)
~a = -61 (1100 0011)
a << 2 = 240 (1111 0000)
a>>2 = 15 (0000 1111)
There are following Bitwise operators supported by Python language
Operator | Name | Example |
& | Binary AND | Sets each bit to 1 if both bits are 1 |
| | Binary OR | Sets each bit to 1 if one of two bits is 1 |
^ | Binary XOR | Sets each bit to 1 if only one of two bits is 1 |
~ | Binary Ones Complement | Inverts all the bits |
<< | Binary Left Shift | Shift left by pushing zeros in from the right and let the leftmost bits fall off |
>> | Binary Right Shift | Shift right by pushing copies of the leftmost bit in from the left, and let the rightmost bits fall off |
Python Logical Operators
There are following logical operators supported by Python language. Assume variable a holds 10 and variable b holds 20 then
Operator | Description | Example |
and Logical AND | If both the operands are true then condition becomes true. | (a and b) is true. |
or Logical OR | If any of the two operands are non-zero then condition becomes true. | (a or b) is true. |
not Logical NOT | Used to reverse the logical state of its operand. | Not(a and b) is false. |
Python Membership Operators
Python’s membership operators test for membership in a sequence, such as strings, lists, or tuples. There are two membership operators as explained below −
Operator | Description | Example |
in | Evaluates 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 in | Evaluates 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. |
Python Identity Operators
Identity operators compare the memory locations of two objects. There are two Identity operators explained below −
Operator | Description | Example |
is | Evaluates 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 not | Evaluates 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). |
Python Operators Precedence
Sr.No. | Operator & Description |
1 | ** Exponentiation (raise to the power) |
2 | ~ + - Complement, unary plus and minus (method names for the last two are +@ and -@) |
3 | * / % // Multiply, divide, modulo and floor division |
4 | + - Addition and subtraction |
5 | >> << Right and left bitwise shift |
6 | & Bitwise 'AND' |
7 | ^ | Bitwise exclusive `OR' and regular `OR' |
8 | <= < > >= Comparison operators |
9 | <> == != Equality operators |
10 | = %= /= //= -= += *= **= Assignment operators |
11 | is is not Identity operators |
12 | in not in Membership operators |
13 | not or and Logical operators |
Thank you