random模块主要包含生成伪随机数的各种功能变量和函数
https://docs.python.org/3/library/random.html
常用函数
01.random.seed(a=None, version=2): 指定种子来初始化伪随机数生成器
"""
计算机不能产生绝对的随机数,只能产生伪随机数,伪就是有规律的意思。random.seed()会改变随机生成器的种子:
1.传入的数值用于指定随机数生成时所用算法开始时所选定的整数值,如果使用相同的seed()值,则每次生成的随机数都相同(每次都一样);
2.如果不设置这个值,则系统会根据时间来自己选择这个值,此时每次生成的随机数会因时间的差异而有所不同(每次都不一样);
"""
# 用法:使用在其他随机数的前面,是定随机数的初始值,保证每次循环获得的结果都是一致的
random.seed(1)
for i in range(5):
print(random.randint(0, 10), end=' ')
# 循环结果:2 9 1 4 1
# 每次执行都是这个结果
02.random.randrange(start,stop[,step]):返回从start开始到stop结束,步长为step的随机数
# 用法:
random.randrange(0, 100, 9)
random.randrange(100, 1, -9)
random.randrang(100)
for i in range(1,8):
print(random.randrange(0, 100, 9), end=' ')
# 63 81 54 99 18 0 81
# 返回的都是能别step(缺省值为1)整除的数,起始数除外
03.random.randint(a,b):生成一个范围为 a<=N<=b的随机整数
04.random.choice(seq): 从seq中随机抽取一个元素,若seq为空则跑出IndexError
05.random.chioces(seq, weight=None,*, cum_weights=None, k=1):从seq中抽取k个元素,还可以通过weight来指定每个元素被抽取的权重
06.random.shuffle(x[,random]): 对X序列执行洗牌“随机排序”操作
07.random.sample(population,k):从population序列中抽取K个独立元素
08.random.random(): 生成一个0.0(包含)到1.0(不包含)之间的伪随机浮点数
09.random.uniform(a,b):生成一个范围【a,b】的随机数
10.random.expovariate(lambd):生成呈指数分布的随机数