一、random库概述
随机数在计算机十分常见,Python内置的random库主要运用于产生各种分布的伪随机数序列。random库是使用随机数的Python标准库,伪随机数:计算机中通过采用梅森旋转算法生成的(伪)随机序列中元素,其概率是确定的、可见的,所以被称为伪随机数。而真正意义上的随机数是按照实验过程中表现的分布概率随机产生的,其结果是不可预测的。python中用于生成伪随机数的函数库是random。因为是标准库,使用时候只需要import random。
random库包括两类函数,常用共8个
- 基本随机数函数: seed(), random()
- 扩展随机数函数: randint(), getrandbits(), uniform(), randrange(), choice(), shuffle()
二、基本随机数函数
设定一个随机数种子,通过梅森旋转算法会产生一个随机序列,随机序列某个数就是随机数。只要随机数种子是一样的,那么产生的随机序列就是一样的,随机数也是一样的。
import randomrandom.seed(10)print("{}".format(random.random()))random.seed(10)print("{}".format(random.random()))
输出结果:
三、扩展随机数函数
import random as tprint(r.randint(1,10))print(r.randint(1,10))print()print(r.randrange(10,100,10))print(r.randrange(10,100,10))print()print(r.getrandbits(10))print(r.getrandbits(10))print()print(r.uniform(4,9))print(r.uniform(4,9))print()a=[1,66,78,45,0,63,3,34,66,78]print(r.choice(a))print(r.choice(a))print()r.shuffle(a)print(a)r.shuffle(a)print(a)
运行结果:
8
9
40
50
611 373
4.579637349667651
7.913823016998503
1
45
[78, 45, 0, 1, 66, 63, 34, 66, 78, 3]
[3, 66, 34, 45, 78, 1, 0, 66, 63, 78]