随机数很常见,但到底哪边是开区间,哪边是闭区间谁记得住呀(笑)
模块引入
import random
函数介绍
random.random()
随机生成一个$[0,1)$区间的浮点数。
random.uniform(a,b)
在$[a,b]$区间内随机生成浮点数。其中 $a>b$ 和 $a<b$ 都可以随机生成两数区间内的浮点数。
需要注意的是区间的范围,闭区间和开区间的概念在浮点数与整数的区别。
random.randint(a,b)
在$[a,b]$区间内随机生成整数,并只允许$a<b$。
random.randrange(a,b,step)
在$[a,b)$ 区间内的以 $\text{step}$ 为步长的序列中随机选择一个数。
或可等同于:random.choice(range(a,b,step))
,后者等同于在序列里随机抽取数值。
random.choice(s)
从序列 $s$ 中随机抽取元素。
random.shuffle(s)
将序列 $s$ 随机打乱。
random.sample(s, k)
从序列 $s$ 中随机获取长度为 $k$ 的片段(注意不是子序列),可视为采样。
致谢
本文致谢细心的 Song 老师及 Clockworkai 同学。
Reference
python–随机函数(random,uniform,randint,randrange,shuffle,sample)