numpy.random.RandomState.randint#
方法
- random.RandomState.randint(low, high=None, size=None, dtype=int)#
从 low(包含)到 high(不包含)返回随机整数。
从指定数据类型的“离散均匀”分布中返回指定数据类型的随机整数,该分布位于“半开”区间 [low, high)。如果 high 为 None(默认值),则结果来自 [0, low)。
- 参数:
- lowint 或类数组的整数
要从分布中抽取的最低(带符号)整数(除非
high=None
,在这种情况下,此参数是最高整数的上面一个)。- highint 或类数组的整数,可选
如果提供,则表示要从分布中抽取的最高(带符号)整数的上面一个(如果
high=None
,请参见上面的行为)。如果类数组,则必须包含整数值- sizeint 或 int 元组,可选
输出形状。如果给定的形状为,例如,
(m, n, k)
,则将抽取m * n * k
个样本。默认值为 None,在这种情况下,将返回单个值。- dtypedtype,可选
结果的所需数据类型。字节序必须为本机。默认值为 long。
1.11.0 版本中的新增功能。
警告
此函数默认为 C-long 数据类型,在 Windows 上为 32 位,在 64 位平台上为 64 位(在 32 位平台上为 32 位)。从 NumPy 2.0 开始,NumPy 的默认整数在 32 位平台上为 32 位,在 64 位平台上为 64 位。这对应于 np.intp。(dtype=int 与大多数 NumPy 函数中的情况不同。)
- 返回:
另请参见
random_integers
类似于
randint
,但针对闭合区间 [low, high],如果省略 high,则 1 是最低值。random.Generator.integers
应用于新代码。
示例
>>> np.random.randint(2, size=10) array([1, 0, 0, 0, 1, 1, 0, 0, 1, 0]) # random >>> np.random.randint(1, size=10) array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
生成一个 2 x 4 的整数数组,值介于 0 到 4 之间(包含)。
>>> np.random.randint(5, size=(2, 4)) array([[4, 0, 2, 1], # random [3, 2, 2, 0]])
生成一个 1 x 3 的数组,包含 3 个不同的上限。
>>> np.random.randint(1, [3, 5, 10]) array([2, 2, 9]) # random
生成一个 1 x 3 的数组,包含 3 个不同的下限。
>>> np.random.randint([1, 5, 7], 10) array([9, 8, 7]) # random
使用广播生成一个 2 x 4 的数组,数据类型为 uint8。
>>> np.random.randint([1, 3, 5, 7], [[10], [20]], dtype=np.uint8) array([[ 8, 6, 9, 7], # random [ 1, 16, 9, 12]], dtype=uint8)