random库概述
随机数在计算机应用中十分常见,Python语言提供了random库用于产生各种分布的伪随机数序列。random库采用梅森旋转算法(Mersenne twister)生成伪随机数序列,可用于除随机性要求更高的加解密算法外的大多数工程应用。
random库提供了不同类型的随机数函数,其中最基本的函数是random.random(),它生成一个[0.0,1.0)之间的随机小数,所有其他随机函数都是基于这个函数扩展开来。
常用函数
函数 | 描述 |
---|---|
seed(a=None) | 初始化随机数种子,默认值为当前系统时间 |
random() | 生成一个[0.0,1.0)之间的随机小数 |
randint(a,b) | 生成一个ab之间的整数 |
getrandbits(k) | 获取K位随机位(二进制)的整数 |
randrange(start,stop[,step]) | 生成一个start,stop之间的以step为步数的随机整数 |
uniform(a,b) | 生成一个ab之间的随机小数 |
choice(seq) | 从序列类型(例如列表)中随机返回一个元素 |
shuffle(seq) | 将序列类型中元素随机排列,返回打乱后的序列 |
sample(pop,k) | 从pop类型中随机选取k个元素,以列表类型返回 |