#### Previous topic

numpy.random.randn

#### Next topic

numpy.random.random_integers

# numpy.random.randint

`numpy.random.``randint`(low, high=None, size=None)

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

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

  Parameters : | low : int Lowest (signed) integer to be drawn from the distribution (unless `high=None`, in which case this parameter is the highest such integer). high : int, optional If provided, one above the largest (signed) integer to be drawn from the distribution (see above for behavior if `high=None`). size : int or tuple of ints, optional Output shape. Default is None, in which case a single int is returned.
  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.

  See also

  `random.random_integers`
    similar to `randint`, only for the closed interval [low, high], and 1 is the lowest value if high is omitted. In particular, this other one is the one to use to generate uniformly distributed discrete non-integers.

  Examples

      >>> np.random.randint(2, size=10)
      array([1, 0, 0, 0, 1, 1, 0, 0, 1, 0])
      >>> 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([[4, 0, 2, 1],
             [3, 2, 2, 0]])