Check whether K-th bit is set or nots in Python

PythonServer Side ProgrammingProgramming

Suppose we have a number n and another value k. We have to check whether the kth bit in n is set (1) or not. The value of k is considered from right hand side.

So, if the input is like n = 23, k = 3, then the output will be True as binary form of 23 is 10111 so the third last bit is 1 (set).

To solve this, we will follow these steps −

  • temp := n after shifting bits (k - 1) times to the right
  • if temp AND 1 is 1, then
    • return True
  • return False

Let us see the following implementation to get better understanding −

Example Code

Live Demo

def solve(n,k):
   temp = n >> (k - 1)
   if temp & 1:
      return True
   return False

n = 23
k = 3
print(solve(n, k))


23, 3


Updated on 16-Jan-2021 04:36:45