python自带的有random模块,而numpy中也有random的相关功能,因此为了不造成混淆,在载入random模块的时候我们可以给它起一个别名:import random as rndimport numpy as np
接下来我们按照功能的逻辑作为顺序,对比着来分析python自带的random模块,和numpy模块中的random之间的异同:生成0-9之间的一个随机整数:rnd0 = np.random.randint(10)rnd1 = rnd.randint(0, 9) rnd2 = rnd.randrange(9)rnd3 = rnd.randrange(0, 9, 1)
rnd.randint(m, n)的取值范围是[m, n],可生成m-n之间的整数,必须传入左右区间两个参数,只给一个参数会报错。
rnd.randrange(n)方法可以生成一个0-n上的随机整数。可以只传入一个参数为右区间即生成[0, n)之间的随机整数,也可以传入三个参数:左区间,右区间,步长。
而numpy中的 np.random.randint(n)的取值范围是[0, n)。
随机取5-9之间的三个整数:rnd2 = np.random.randint(5, 10, 3)rnd3 = np.random.randint(5, 10, (1, 3))
产生一个多维的数据,python自带的random模块是做不到的。因此我们要选用np.random.randint方法,它需要传入三个数据,左区间,右区间,以及一个描述形状的数值或元组。
rnd2是一个np.array数组。rnd2和rnd3之间的区别是rnd2产生的是一个三维列向量,