This is a pre-release version (2.5.0.dev0+git20251130.2de293a).Go to latest (2.4.4)
{ } Raw JSON

bundles / numpy 2.5.0.dev0+git20251130.2de293a / numpy / random / RandomState / randint

cython_function_or_method

numpy.random:RandomState.randint

Signature

def randint(low, high = None, size = None, dtype = <class 'int'>)

Summary

Return random integers from low (inclusive) to high (exclusive).

Extended Summary

Return random integers from the "discrete uniform" distribution of the specified dtype in the "half-open" interval [low, high). If high is None (the default), then results are from [0, low).

Parameters

low : int or array-like of ints

Lowest (signed) integers to be drawn from the distribution (unless high=None, in which case this parameter is one above the highest such integer).

high : int or array-like of ints, optional

If provided, one above the largest (signed) integer to be drawn from the distribution (see above for behavior if high=None). If array-like, must contain integer values

size : int or tuple of ints, optional

Output shape. If the given shape is, e.g., (m, n, k), then m * n * k samples are drawn. Default is None, in which case a single value is returned.

dtype : dtype, optional

Desired dtype of the result. Byteorder must be native. The default value is long.

Returns

out : int or ndarray of ints

size-shaped array of random integers from the appropriate distribution, or a single such random int if size not provided.

Examples

np.random.randint(2, size=10)
✗
array([1, 1, 0, 0, 0, 1, 1, 0, 0, 1])
np.random.randint(1, size=10)
✓
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
Generate a 2 x 4 array of ints between 0 and 4, inclusive:
np.random.randint(5, size=(2, 4))
✗
array([[3, 0, 2, 2],
       [2, 3, 0, 1]])
Generate a 1 x 3 array with 3 different upper bounds
np.random.randint(1, [3, 5, 10])
✗
array([2, 4, 6])
Generate a 1 by 3 array with 3 different lower bounds
np.random.randint([1, 5, 7], 10)
✗
array([9, 8, 7])
Generate a 2 by 4 array using broadcasting with dtype of uint8
np.random.randint([1, 3, 5, 7], [[10], [20]], dtype=np.uint8)
✗
array([[ 2,  7,  6,  8],
       [ 6, 17, 10, 14]], dtype=uint8)

See also

random.Generator.integers

which should be used for new code.

random_integers

similar to randint, only for the closed interval [low, high], and 1 is the lowest value if high is omitted.

Aliases

  • numpy.random.randint
  • numpy.random.RandomState.randint