Skip to main content

Command Palette

Search for a command to run...

Day05-Python Operators # 2

Arithmetic, Assignment, Comparison, Logical, Identity, Membership, Bitwise

Updated
6 min read
Day05-Python Operators # 2
C
I am Data Science student, has a little bit knowledge on Web Development. I also love writing and editing as my hobby. Passionate to explore the world.

PART # 2

Logical Operators:

Logical operators are used to combine conditional statements. It tells whether the statement is True or False.

OperatorDescriptionExample
andReturns True if both statements are truex < 5 and x < 10
orReturns True if one of the statements is truex < 5 or x < 4
notReverse the result, returns False if the result is truenot(x < 5 and x < 10)
  • and operator: Returns True if both statements are true
x = 5
print(x > 3 and x < 10) #output= True
# returns True => because 5 is greater than 3 and 5 also is less than 10
  • or operator: Returns True if one of the statements is true
x = 5
print(x > 3 or x < 4)  #output = True
# returns True => because one of the conditions are true --> 5 is greater than 3
# but 5 is not less than 4
  • not operator: Reverse the result, returns False if the result is true and returns True if the result is false.
x = 5
print(not(x > 3 and x < 10))
# 5 is greater than 3 and 5 also is less than 10
# returns False => because both statements are true

Identity Operators:

Identity operators are used to compare the objects, not if they are equal, but if they are actually the same object, with the same memory location:

OperatorDescriptionExample
isReturns True if both variables are the same objectx is y
is notReturns True if both variables are not the same objectx is not y
  • is operator:
x = ["apple", "banana"]
y = ["apple", "banana"]
z = x

print(x is z) #returns True 
# because z is the same object as x

print(x is y) #returns False
# because x is not the same object as y, even if they have the same content

print(x == y) #returns True 
# to demonstrate the difference betweeen "is" and "==": 
# this comparison returns True because x is equal to y
  • is not operator:
x = ["apple", "banana"]
y = ["apple", "banana"]
z = x

print(x is not z) # returns False
# because z is the same object as x

print(x is not y) # returns True 
# because x is not the same object as y, even if they have the same content

print(x != y)  # returns False
# to demonstrate the difference betweeen "is not" and "!=": 
# this comparison returns False because x is equal to y

Python Membership Operators:

OperatorDescriptionExample
inReturns True if a sequence with the specified value is present in the objectx in y
not inReturns True if a sequence with the specified value is not present in the objectx not in y
  • in operator:
x = ["apple", "banana"]  
print("banana" in x) # returns True
# returns True => because a sequence with the value "banana" is in the list
  • not in operator:
x = ["apple", "banana"]
print("pineapple" not in x) # returns True 
# returns True => because a sequence with the value "pineapple" is not in the list

Bitwise Operators:

Bitwise operators are used to compare (binary) numbers:

  • AND operator (&):

The bitwise AND operator & returns a binary number whose bits are set to 1 only if the corresponding bits of both its operands are 1

print(6 & 3) #output= 2

In this case, 6 and 3 are represented in binary as 110 and 011, respectively. Performing a bitwise AND operation on these two numbers results in 010, which is equivalent to the decimal number 2. Therefore, the output of the given Python code is 2.

  • OR operator ( | ):

The bitwise OR operator | returns a binary number whose bits are set to 1 if either of the corresponding bits of its operands is 1.

print(6 | 3)  #output= 7

In this case, 6 and 3 are represented in binary as 110 and 011, respectively. Performing a bitwise OR operation on these two numbers results in 111, which is equivalent to the decimal number 7. Therefore, the output of the given Python code is 7.

  • XOR operator ( ^ ):

The bitwise XOR operator ^ returns a binary number whose bits are set to 1 only if the corresponding bits of its operands are different.

print(6 ^ 3)   #output= 5

In this case, 6 and 3 are represented in binary as 110 and 011, respectively. Performing a bitwise XOR operation on these two numbers results in 101, which is equivalent to the decimal number 5. Therefore, the output of the given Python code is 5.

  • NOT operator (~):

The tilde operator ~ in Python is a unary operator that performs bitwise inversion. It reverses all the bits in a given number, i.e., all ones become zeros and all zeros become ones

print(~3)    #output= -4

In this case, the number 3 is represented in binary as 011. Inverting the bits of 3 results in 100, which is equivalent to the decimal number -4 1. Therefore, the output of the given Python code is -4.

  • Zero fill left shift opera1tor (<<):

The bitwise left shift operator << shifts the bits of its first operand to the left by the number of positions specified in its second operand.

print(3 << 2)  #output= 12

In this case, 3 is represented in binary as 011. Shifting the bits of 3 two positions to the left results in 1100, which is equivalent to the decimal number 12. Therefore, the output of the given Python code is 12.

  • Signed right shift (>>):

The bitwise right shift operator >> shifts the bits of its first operand to the right by the number of positions specified in its second operand.

print(8 >> 2)   #output= 2

In this case, 8 is represented in binary as 1000. Shifting the bits of 8 two positions to the right results in 0010, which is equivalent to the decimal number 2. Therefore, the output of the given Python code is 2.

Quick Quiz:

Example # 1

print((6 + 3) - (6 + 3)) #output =0
# Parenthesis have the highest precedence, and need to be evaluated first.
# The calculation above reads 9 - 9 = 0

Example # 2

print(100 + 5 * 3) #output = 115

# Multiplication has higher precedence than addition, and needs to be evaluated first.
# The calculation above reads 100 + 15 = 115

<< Previously -------------------------------------------------- Next Lesson >>

100DaysofPython

Part 6 of 35

This series is for beginners in which we explore python language along with how it is used in data science and do some exercises and some python related projects.

Up next

Day06-Exercise 01

Basic Calculator