目录
1、应用场景
2、random-标准库
Python的random库有很多应用场景,以下是一些例子:
这些只是random库的一些基本应用,实际上,它可以用于任何需要随机性的场景中。
python中的random库是Python内置的随机数产生库。它可以产生各种分布(均匀分布、正态分布等)和类型(整数、浮点数等)的随机数。
主要的函数有:
除此之外,random库还包括了一些生成特定分布随机数的函数,例如正态分布、指数分布等。举例来说,random.gauss(mu, sigma)会生成一个均值为mu,标准差为sigma的正态分布随机数。
下面简单举例介绍Python random模块的常见方法及用法:
random(): 这个方法返回0和1之间的随机浮点数(包括0,不包括1)。
import random
print(random.random())
uniform(a, b): 返回指定范围内的随机浮点数。
print(random.uniform(1, 5)) # 返回 1~5 之间的随机浮点数
randint(a, b): 返回指定范围内的随机整数。
print(random.randint(1, 5)) # 返回 1~5 之间的随机整数
randrange(start, stop, step): 返回任意选定开始和结束(不包含)之间,以固定步长的随机整数。
print(random.randrange(0, 10, 2)) # 返回 0~10 以2为步长的随机整数(只返回0,2,4,6,8中的一个)
choice(seq): 从可以迭代和随机选择的非空序列返回一个随机元素。
print(random.choice('Python')) # 返回 'Python' 中的一个随机字符
shuffle(x): 将序列x随机排序,改变序列本身。
lst = [1, 2, 3, 4, 5]
random.shuffle(lst)
print(lst) # 结果是随机的,如 [2, 4, 1, 5, 3]
sample(population, k): 返回指定大小的新列表,列表元素从原始序列或集合随机取样,不改变原有序列。
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(random.sample(lst, 5)) # 结果是从lst中随机取5个元素形成的新列表,如 [5, 2, 7, 1, 4]