  # numpy.right_shift () in Python

NumPy | Python Methods and Functions

Since numbers are internally represented in binary, this operation is equivalent to dividing arr1 by 2 ** arr2. For example, if the number is 20 and we want a 2-bit right shift, then after a 2-bit right shift, the result will be 20 / (2 ^ 2) = 5.

Syntax: numpy.right_shift (arr1, arr2, /, out = None, *, where = True, casting = `same_kind`, order = `K`, dtype = None, ufunc `right_shift`)

Parameters:
arr1: array_like of integer type
arr2: array_like of integer type
Number of bits we have to remove at the right of arr1.

out: [ndarray, optional] A location into which the result is stored.
- & gt; If provided, it must have a shape that the inputs broadcast to.
- & gt; If not provided or None, a freshly-allocated array is returned.

** kwargs: allows you to pass keyword variable length of argument to a function. It is used when we want to handle named argument in a function.

where: [array_like, optional] True value means to calculate the universal functions (ufunc) at that position, False value means to leave the value in the output alone.

Return: array of integer type.
Return arr1 with bits shifted arr2 times to the right. This is a scalar if both arr1 and arr2 are scalars.

Code # 1: Work

` `

` # Python program explaining # right_shift () function    import numpy as geek in_num = 20 bit_shift = 2   print ( "Input number:" , in_num) print ( "Number of bit shift:" , bit_shift)    out_num = geek.right_shift (in_num, bit_shift)  print ( "After right shifting 2 bit :" , out_num) `

Output:

` Input number: 20 Number of bit shift: 2 After right shifting 2 bit: 5 `

Code # 2:

` `

` # Python program explaining # right_shift () function   import numpy as geek   in_arr = [ 24 , 48 , 16 ] bit_shift = [ 3 , 4 , 2 ]   print ( "Input array:" , in_arr)  print ( " Number of bit shift: " , bit_shift)   out_arr = geek.right_shift (in_arr, bit_shift)  print ( "Output array after right shifting:" , out_arr)  `

Output:

` Input array: [ 24, 48, 16] Number of bit shift: [3, 4, 2] Output array after right shifting: [3 3 4] `