# Check whether kth bit is set or not in Python

Bit plays a very important role while solving programming problems. In this article, we have discussed how to check whether the kth bit of a number is set or not in Python. We have also put the code in this tutorial.

## Python program to check if kth bit of a number is set or not

So let’s see the input and corresponding output for better understanding:

Input : num = 9, k = 1 Output: Set

9 in bit representation is 1001, hence its 1st bit is set

**Method-1:**

We can check whether kth bit of a number is set or not with the help of left shift operator.

**Algorithm:**

- Firstly compute 1<<(k-1) and store it in a variable say var, hence var=1<<(k-1). var stores a number which has only its kth bit set.
- In this step you have to perform bitwise AND of number and var. If this gives a non-zero number then kth bit of number is set otherwise not.

# Function to check if kth bit of a number is set or not def isSet(num, k): var = (1 << (k - 1)) if num & var: print( "{}st bit of {} is set".format(k,num)) else: print("{}st bit of {} is not set".format(k,num)) # Driver program num = 9 k = 1 isSet(num, k)

Output: 1st bit of 9 is set

**Method-2:**

We can do this using right shift operator also.

- Firstly compute num>>(k-1) and store it in a variable say var, hence var=num>>(k-1). var will have its last bit equal to 1 if k-th bit is set else it will have last bit equal to 0.
- In this step you have to perform bitwise AND of 1 and var. If this gives a non-zero number then kth bit of number is set otherwise not.

# Function to check if kth bit of a number is set or not def isSet(num, k): var = (num>>(k-1)) if 1 & var: print( "{}st bit of {} is set".format(k,num)) else: print("{}st bit of {} is not set".format(k,num)) # Driver program num = 9 k = 1 isSet(num, k)

Output: 1st bit of 9 is set

## Leave a Reply

You must be logged in to post a comment.