随机数并不意味着每次都有不同的数字。随机意味着无法从逻辑上预测的事物。
计算机根据程序运行,而程序是明确的指令集。所以这意味着必须有某种算法来生成随机数。
如果有一个程序可以生成随机数,那么它是可以预测的,因此它不是真正的随机。
通过生成算法生成的随机数称为伪随机。
我们能产生真正的随机数吗?
是的。为了在我们的计算机上生成真正的随机数,我们需要从外部源获取随机数据。这个外部来源通常是我们的击键、鼠标移动、网络数据等。
我们不需要真正的随机数,除非它与安全相关(例如加密密钥)或应用的基础是随机性(例如数字轮盘赌轮)。
在本教程中,我们将使用伪随机数。
NumPy 提供了random
模块处理随机数。
随机模块的rand()
方法返回 0 到 1 之间的随机浮点数。
在 NumPy 中,我们使用数组,您可以使用上面示例中的两种方法来创建随机数组。
这个randint()
方法需要一个size
参数,您可以在其中指定数组的形状。
生成一个包含 5 个从 0 到 100 的随机整数的一维数组:
from numpy import random
x=random.randint(100, size=(5))
print(x)
亲自试一试 »
生成一个 3 行的二维数组,每行包含 5 个从 0 到 100 的随机整数:
from numpy import random
x = random.randint(100, size=(3, 5))
print(x)
亲自试一试 »
这个rand()
方法还允许您指定数组的形状。
这个choice()
方法允许您根据值数组生成随机值。
这个choice()
方法以数组作为参数并随机返回其中一个值。
这个choice()
方法还允许您返回数组的值。
添加一个size
参数指定数组的形状。
生成一个由数组参数中的值(3、5、7 和 9)组成的二维数组:
from numpy import random
x = random.choice([3, 5, 7, 9], size=(3, 5))
print(x)
亲自试一试 »
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!