NumPy 随机数

在 NumPy 中,我们有一个名为 random 的模块,它提供了生成随机数的函数。

这些函数可用于为测试算法生成随机输入。


在 NumPy 中生成随机整数

如前所述,我们使用 random 模块在 NumPy 中处理随机数。

让我们看一个例子。

import numpy as np

# generate random integer from 0 to 9
random_number = np.random.randint(0, 10)

print(random_number)

# Output: 7

在此示例中,我们使用了 random 模块来生成一个随机数。random.randint() 函数接受两个参数,

  • 0 - 下界(包含)
  • 10 - 上界(不包含)

这里,random.randint() 返回一个介于 09 之间的随机整数。

由于输出将是介于 09 之间的随机生成的整数,因此每次运行代码时,我们都会看到不同的输出。

注意:我们也可以这样导入和使用 random 模块

from numpy import random

random_number = random.randint(0, 10)

print(random_number)

这里,语法略有不同,但输出将与上面相同,我们将获得一个介于 09 之间的随机整数。


在 NumPy 中生成随机浮点数

我们还可以生成一个介于 01 之间的随机浮点数。为此,我们使用 random.rand() 函数。例如,

import numpy as np

# generate random float-point number between 0 and 1
random_number = np.random.rand()

print(random_number)

# Output: 0.7696638323107154

这里,random.rand() 生成一个介于 01 之间的随机浮点数。

由于该数字是随机生成的,因此每次运行代码时,输出值都可能不同。


在 NumPy 中生成随机数组

NumPy 的随机模块也可用于生成随机数数组。例如,

import numpy as np

# generate 1D array of 5 random integers between 0 and 9
integer_array = np.random.randint(0, 10, 5)

print("1D Random Integer Array:\n",integer_array)

# generate 1D array of 5 random numbers between 0 and 1
float_array = np.random.rand(5)

print("\n1D Random Float Array:\n",float_array)

# generate 2D array of shape (3, 4) with random integers
result = np.random.randint(0, 10, (3,4))

print("\n2D Random Integer Array:\n",result)

输出

1D Random Integer Array:
[9 7 8 4 2]

1D Random Float Array:
 [0.7877579  0.01723754 0.93995075 0.17126388 0.69913594]

2D Random Integer Array:
 [[0 5 3 8]
 [3 9 2 1]
 [8 7 1 2]]

这里,

  • np.random.randint(0, 10, 5) - 生成一个包含 5 个介于 09 之间随机整数的一维数组。
  • np.random.rand(5) - 生成一个包含 5 个介于 01 之间随机数的-一维数组。
  • np.random.randint(0, 10, (3,4)) - 生成一个形状为 (3, 4) 的二维数组,其中包含介于 09 之间的随机整数。

从 NumPy 数组中选择随机数

要从 NumPy 数组中选择一个随机数,我们可以使用 random.choice() 函数。

让我们看一个例子。

import numpy as np

# create an array of integers from 1 to 5
array1 = np.array([1, 2, 3, 4, 5])

# choose a random number from array1
random_choice = np.random.choice(array1)

print(random_choice)

# Output: 3

在上例中,np.random.choice(array1) 函数从 array1 数组中选择一个随机数。

需要注意的是,输出将是 array1 中的一个随机数,每次运行代码时都会不同。

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战