📅  最后修改于: 2020-06-24 04:41:10             🧑  作者: Mango
numpy.left_shift()
函数用于将整数的位向左移动。
通过在arr1的右边附加arr2 0s(零),将这些位向左移动。由于数字的内部表示是二进制格式,因此此操作等效于将arr1乘以2 ** arr2。例如,如果数字为5,而我们想向左移2位,那么在向左移2位之后,结果将是5 *(2 ^ 2)= 20。
语法: numpy.left_shift(arr1, arr2, /, out=None, *, where=True, casting=’same_kind’, order=’K’, dtype=None, ufunc ‘left_shift’)
参数:
arr1:整数类型的array_like;
arr2:整数类型的array_like要追加到arr1的零的数目。arr2的值应为正整数;
out: [ndarray,可选]将结果存储到的位置。
->如果提供,则必须具有广播输入的形状。
->如果未提供或没有,则返回新分配的数组。
** kwargs:允许您将关键字的可变长度参数传递给函数。当我们要处理函数中的命名参数时使用它。
where: [array_like,可选] True值表示在该位置计算通用函数(ufunc),False值表示将值保留在输出中。
返回:
整数类型的数组。返回arr1,将arr2次左移。如果arr1和arr2均为标量,则为标量。
代码1:
# 解释left_shift()函数的Python程序
import numpy as geek
in_num = 5
bit_shift = 2
print ("输入号码 : ", in_num)
print ("移位数 : ", bit_shift )
out_num = geek.left_shift(in_num, bit_shift)
print ("左移2位后 : ", out_num)
输出:
输入号码 : 5
移位数 : 2
左移2位后 : 20
代码2:
# 解释left_shift()函数的Python程序
import numpy as geek
in_arr = [2, 8, 15]
bit_shift =[3, 4, 5]
print ("输入数组 : ", in_arr)
print ("移位数 : ", bit_shift)
out_arr = geek.left_shift(in_arr, bit_shift)
print ("左移后的输出数组: ", out_arr)
输出:
输入数组 : [2, 8, 15]
移位数 : [3, 4, 5]
左移后的输出数组: [ 16 128 480]