1.random库
random库是使用随机数的Python标准库
伪随机数:采用梅森旋转算法生成的(伪)随机序列中元素
random库主要用于生成随机数
random库包含两类函数,常用的共8个:
基本随机数函数:seed(),random()
扩展随机数函数:randint(),getrandbits(),uniform(),randrange(),choice(),shuffle()
2.基本随机数函数
随机数种子10 -----> 梅森旋转算法 -----> 产生随机序列
随机序列是根据种子来唯一确定的,随机序列中的每一个数都是随机数。
只要种子相同,产生的随机序列都是相同,随机数种子确定了随机数序列的产生。
1.seed(a = None),初始化给定的随机数种子,默认为当前系统时间。
>>>random.seed(10) #产生种子10对应的序列
2.random(),生成一个[0.0,1.0]之间的随机小数
>>>random.random()
0.8805970804078502
3.扩展随机数函数
1.randint(a,b), 生成一个[a,b]之间的整数
>>>random.randint(10,100)
64
2.randrange(m,n[,k]),生成一个[m,n)之间以k为步长的随机整数
>>>random.randrange(10,100,10)
80
3.getrandbits(k),生成一个k比特长的随机整数
>>>random.getrandbits(16)
37885
4.uniform(a,b),生成一个[a,b]之间的随机小数
>>>random.uniform(10,100)
25.89586259475388
5.choice(seq),从序列seq中随机选择一个元素
>>>random.choice([1,2,3,4,5,6,7,8,9])
8
6.shuffle(seq),将序列seq中元素随机排列,返回打乱后的序列
>>>s = [1,2,3,4,5,6,7,8,9]
>>>random.shuffle(s)
>>>print(s)
[2, 3, 8, 4, 6, 5, 7, 9, 1]