Python numpy random randint

Python numpy random randint 函数返回或生成从起始值(低)到结束值(高)的随机整数值。random randint 函数的语法是

numpy.random.randint(low, high = None, size = None, dtype = int)
  • low:从分布中抽取的最低整数。如果高值不为 None,它作为起始值;如果高值为 None,则它作为最高值。
  • high:它是可选的,这是从分布中抽取的最高整数。
  • size:它可以是一个整数或一个整数元组。在这里,我们必须指定数组的大小或维度。例如,size = (2, 3) 用整数填充两行三列的数组。
  • dtype:输出的数据类型。

Python numpy random randint 示例

random randint 函数返回低(包含)和高(不包含)之间的离散均匀分布整数。如果我们不指定大小,则它返回一个单一数字。以下示例打印 0 到 3 之间的数字。

import numpy as tg

Arr = tg.random.randint(3)

print(Arr)
1

Python Numpy random randint 一维数组

在此示例中,我们使用了 low 和 size 参数来返回一维随机整数数组。这意味着在没有 high 参数的情况下,low 值将成为 high 值。在这里,(3, size = 5) 返回一个包含五个小于三的值的数组。接下来,(7, size = 10) 返回一个包含十个小于七的值的数组。

import numpy as tg

a = tg.random.randint(3, size = 5)

print(a)

b = tg.random.randint(7, size = 10)

print(b)
[1 0 2 2 2]
[6 0 0 4 2 5 1 1 5 2]

在此示例中,我们分配了 low 和 high 值。这意味着第一个语句返回一个包含八个介于 3 和 10 之间随机数的数组。

import numpy as tg

c = tg.random.randint(3, 10, size = 8)

print(c)

d = tg.random.randint(10, 50, size = 10)

print(d)
[7 8 6 9 5 8 4 5]
[38 14 25 23 17 26 37 12 47 20]

Python numpy random randint 二维数组

在此示例中,前两个语句打印具有默认下限和给定上限的二维数组。其他两个语句返回一个从 low 到 high 值的二维随机数数组。例如,(20, 90, size = (3, 6)) 返回一个 3 * 6 的 20 到 90 之间的整数矩阵。

import numpy as tg

randintArr1 = tg.random.randint(5, size = (2, 3))
print(randintArr1)

randintArr2 = tg.random.randint(12, size = (4, 6))
print(randintArr2)

randintArr3 = tg.random.randint(20, 90, size = (3, 6))
print(randintArr3)

randintArr4 = tg.random.randint(9, 49, size = (5, 7))
print(randintArr4)
random randint Example

三维数组

它将使用 Python numpy random randint 生成三维数字数组。

import numpy as tg

a = tg.random.randint(8, size = (2, 2, 3))
print(a)

b = tg.random.randint(22, size = (2, 3, 5))
print(b)

c = tg.random.randint(129, 430, size = (3, 3, 5))
print(c)

d = tg.random.randint(111, 149, size = (2, 4, 7))
print(d)
[[[3 5 0]
  [7 4 4]]

 [[6 6 6]
  [2 5 7]]]
[[[14  2  0  1 12]
  [11 20 17 17 19]
  [14 18  4  4 17]]

 [[ 0 19  8  6  0]
  [ 4  7  2 11 17]
  [18  3 18 12  6]]]
[[[142 178 428 360 192]
  [327 232 198 309 175]
  [272 181 370 223 380]]

 [[360 402 282 377 213]
  [164 250 146 212 243]
  [151 255 406 184 172]]

 [[153 360 324 285 200]
  [359 220 298 214 411]
  [245 409 228 400 282]]]
[[[137 145 144 133 135 114 141]
  [126 144 147 141 115 134 133]
  [131 121 115 122 130 146 124]
  [148 120 131 120 125 136 136]]

 [[131 129 141 129 116 132 126]
  [145 124 120 139 141 139 123]
  [140 148 145 119 113 134 116]
  [111 126 135 122 144 137 114]]]

带所有参数的 randint

import numpy as tg

e = tg.random.randint(5, high = 20, size = (2, 3), dtype = tg.int16)
print(e)

f = tg.random.randint(99, 159, size = (2, 3, 5), dtype = tg.int16)
print(f)
[[ 6  9 10]
 [19  5 18]]
[[[139 149 101 148 150]
  [153 147 158 106 126]
  [152 112 102 134 150]]

 [[138 130 108 153 133]
  [106 107 136 119 124]
  [125 110 142 103 118]]]

此函数还允许使用多个值作为较低和较高的分布值。在这里,([1, 3, 9], 22) 返回 1 到 22、3 到 22、9 到 22 之间的随机值。接下来,(7, [22, 44, 99]) 返回 7 到 22、7 到 44、7 到 99 之间的随机值。

import numpy as tg

g = tg.random.randint([1, 3, 9], 22)
print(g)

h = tg.random.randint([11, 3, 99, 9], 122)
print(h)

i = tg.random.randint(7, [22, 44, 99])
print(i)

j = tg.random.randint(99, [122, 233, 999, 333, 194])
print(j)
[14 11 21]
[ 89 113 100  38]
[11 14 62]
[120 156 937 260 125]

除此之外,我们还可以使用嵌套值来创建低值和高值之间的多维整数数组。

import numpy as tg

k = tg.random.randint([4, 3, 7], [[10], [20]])
print(k)

print("====Second ====")
l = tg.random.randint([99, 3, 99, 9], [[189], [222]])
print(l)

print("====Third ====")
m = tg.random.randint([[56], [75]], [129, 264, 199])
print(m)

print("====Fourth ====")
n = tg.random.randint([[99], [122], [233]], [999, 443, 394])
print(n)
[[ 8  7  9]
 [ 8 14 12]]
====Second ====
[[130  21 167  69]
 [189 155 201  56]]
====Third ====
[[ 93 230  70]
 [ 86 212 147]]
====Fourth ====
[[981 342 380]
 [903 176 325]
 [862 252 271]]