random模块实现了各种分布的伪随机数生成器,常用功能包括:

  1. random.seed(a=None, version=2):初始化随机数生成器,如果 a 被省略或为 None ,则使用当前系统时间。 如果操作系统提供随机源,则使用它们而不是系统时间,如果 a 是 int 类型,则直接使用。
  2. random.getrandbits(k):返回带有 k 位随机的Python整数。
  3. random.randrange(stop),random.randrange(start, stop[, step]):从 range(start, stop, step) 返回一个随机选择的元素。 这相当于 choice(range(start, stop, step)) ,但实际上并没有构建一个 range 对象。
  4. random.randint(a, b):返回随机整数 N 满足 a <= N <= b。相当于 randrange(a, b+1)。
  5. random.choice(seq):从非空序列 seq 返回一个随机元素。
  6. random.shuffle(x[, random]):将序列 x 随机打乱位置。可选参数 random 是一个0参数函数,在 [0.0, 1.0) 中返回随机浮点数;默认情况下,这是函数 random() 。
  7. random.sample(population, k):返回从总体序列或集合中选择的唯一元素的 k 长度列表。 用于无重复的随机抽样。
  8. random.random():返回 [0.0, 1.0) 范围内的下一个随机浮点数。
  9. random.uniform(a, b):返回一个随机浮点数 N ,当 a <= b 时 a <= N <= b ,当 b < a 时 b <= N <= a 。取决于等式 a + (b-a) * random() 中的浮点舍入,终点 b 可以包括或不包括在该范围内。
  10. random.triangular(low, high, mode):返回一个随机浮点数 N ,使得 low <= N <= high 并在这些边界之间使用指定的 mode 。 low 和 high 边界默认为零和一。 mode 参数默认为边界之间的中点,给出对称分布。
    其实该模块还包括一些更高级的功能,如高斯分布等,这些功能可能对某些专业人员非常有用,具体可以参考Python官方文档。