按位右移运算符 (>>) 获取两个数字,并将第一个操作数的位右移第二个操作数指定的位数。例如:要将x位右移y位,可以使用表达式(x>>y)。它相当于x除以2y。
下面的示例描述了如何右移运算符的工作原理:
1000 >> 2 returns 250
(In Binary)
1000 -> 1111101000
>> 2 | right shift the bits
----- V by 2 places
250 <- 11111010
(In Binary)
NumPy right_shift() 函数将整数的位向右移动。位向右移动 y。该运算相当于x除以2y。此 ufunc 实现 C/Python 运算符 >>。
语法
numpy.right_shift(x, y, out=None)
参数
x | 必填。 指定输入数组。 |
y | 必填。 指定要删除x右侧的位数。必须是非负数。如果x.shape != y.shape,则它们必须可广播为通用形状。 |
out | 可选。 指定存储结果的位置。如果提供,它必须具有输入广播到的形状。如果未提供或没有提供,则返回新分配的数组。 |
返回值
返回x 位向右移动 y 次。如果 x 和 y 都是标量,则这是一个标量。
示例:
在下面的示例中,right_shift() 函数用于使用两个标量计算右移运算。
import numpy as np
x = 1000
y = 2
#右移操作
z = np.right_shift(x, y)
#显示结果
print("z =", z)
上述代码的输出将是:
z = 250
示例:
right_shift() 函数可与数组一起使用,它按元素计算数组的右移操作。
import numpy as np
x = np.array([[100, 200],[300, 400]])
y = np.array([[0, 1],[2, 3]])
#右移操作
z = np.right_shift(x, y)
#显示结果
print("z =")
print(z)
输出上述代码将是:
z =
[[100 100]
[ 75 50]]