dpnp.left_shift
- dpnp.left_shift(x1, x2, out=None, where=True, order='K', dtype=None, subok=True, **kwargs)
Shifts the bits of each element x1_i of the input array x1 to the left by appending x2_i (i.e., the respective element in the input array x2) zeros to the right of x1_i.
Note that
dpnp.bitwise_left_shift
is an alias ofdpnp.left_shift
.For full documentation refer to
numpy.left_shift
.- Parameters:
x1 ({dpnp.ndarray, usm_ndarray, scalar}) -- First input array, expected to have integer data type. Both inputs x1 and x2 can not be scalars at the same time.
x2 ({dpnp.ndarray, usm_ndarray, scalar}) -- Second input array, also expected to have integer data type. Each element must be greater than or equal to
0
. Both inputs x1 and x2 can not be scalars at the same time. Ifx1.shape != x2.shape
, they must be broadcastable to a common shape (which becomes the shape of the output).out ({None, dpnp.ndarray, usm_ndarray}, optional) -- Output array to populate. Array must have the correct shape and the expected data type. Default:
None
.order ({"C", "F", "A", "K"}, optional) -- Memory layout of the newly output array, if parameter out is
None
. Default:"K"
.
- Returns:
out -- An array containing the element-wise results. The data type of the returned array is determined by the Type Promotion Rules.
- Return type:
dpnp.ndarray
Limitations
Parameters where and subok are supported with their default values. Keyword argument kwargs is currently unsupported. Otherwise
NotImplementedError
exception will be raised.See also
dpnp.right_shift
Shift the bits of an integer to the right.
dpnp.binary_repr
Return the binary representation of the input number as a string.
Examples
>>> import dpnp as np >>> x1 = np.array([5]) >>> x2 = np.array([1, 2, 3]) >>> np.left_shift(x1, x2) array([10, 20, 40])
The
<<
operator can be used as a shorthand forleft_shift
ondpnp.ndarray
.>>> x1 << x2 array([10, 20, 40])
>>> np.binary_repr(5) '101' >>> np.left_shift(np.array(5), 2) array(20) >>> np.binary_repr(20) '10100'