Python自带的random包: 提供一些基本的随机数产生函数,可满足基本需求
函数 | 功能 | 返回 |
---|---|---|
random.random() | 生成一个[0,1)之间的均匀分布浮点数 | 一个浮点数 |
random.uniform() | 生成一个[a,b]之间均匀分布的浮点数 | 一个浮点数 |
random.randint() | 生成一个[a,b]之间的随机整数 | 一个整数 |
random.gauss(mu,sigma) | 按gauss分布生成值 | 一个数 |
random.randrange(a,b,step) | 生成一个[a,b)之间间隔步长为step的随机整数 | 一个整数 |
random.choice(seq) | 从特定序列(可以是列表,元组,字符串)中随机取一个数 | 一个元素 |
random.choices(seq,weight=None,k=1) | (依概率)从指定序列中(有放回)随机抽取 k 个元素,原始序列不变 | 多个元素 |
random.sample(seq,k) | 从指定序列中无房会的抽取k个元素,原始序列不变 | 多个元素 |
random.shuffle(lst) | 将原列表(只支持列表)上的元素元素打乱,原始序列改变 | 打乱后的list |
random.seed() | 初始化随机数种子 | 无返回 |
random.getstate() | 获取随机器内部状态 | 无返回 |
random.setstate() | 设定随机器内部状态 | 无返回 |
import random
random.random() # 0.5102632768396692
random.uniform(0,10) # 6.890853912057401
random.randint(0,10) # 5
random.randrange(0,10,2) # 4
# random.choice()
string = 'nice to meet you'
tup = ('a', 'b', 'c', 'd')
lst = ['a', 'b', 'c', 'd']
random.choice(string) # e
random.choice(tup) # c
random.choice(lst) # a
# random.choices()
lst = ['a', 'b', 'c', 'd']
random.choices(lst,k=3) # ['a', 'a', 'c']
# random.sample()
string = 'nice to meet you'
tup = ('a', 'b', 'c', 'd')
lst = ['a', 'b', 'c', 'd']
random.sample(string,2) # ['e', 'i']
random.sample(tup,2) # ['c', 'b']
random.sample(lst,2) # ['a', 'b']
# random.shuffle()
lst = ['a', 'b', 'c', 'd']
random.shuffle(lst)
print(lst) # ['b', 'd', 'c', 'a']
https://blog.csdn.net/qq_20011607/article/details/82288561