11.3 random库

基本语法

函数名 描述
seed(a = None) 初始化随机数种子,默认值为当前系统时间
random() 生成一个[0.0,1.0)之间的随机小数
randint(a,b) 生成一个[a,b]之间的整数
getrandbits(k) 生成一个 k 比特长度的随机整数
randrange(start,stop,step) 生成一个[start, stop)之间以 step(可省,默认是1) 为步长的随机整数
uniform(a, b) 生成一个[a,b]之间的随机小数
choice(seq) 从序列类型(例如列表)中随机返回一个元素
shuffle(seq) 将原序列类型中元素随机排列打乱
sample(pop, k) 从 pop 中随机选取 k 个元素,以列表类型返回

用法解释

种子的作用

seed(a = None)可以在生成随机数之前设定一个种子(相当于设定了算法),因此当种子相同时产生的随机数也相同,例如:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import random as r
r.seed(23)
print(r.random())	# 输出:0.9248652516259452
print(r.random())	# 输出:0.9486057779931771
print(r.random())	# 输出:0.8924333440485793

r.seed(23)
print(r.random())	# 输出:0.9248652516259452
print(r.random())	# 输出:0.9486057779931771
print(r.random())	# 输出:0.8924333440485793

列表相关

1
2
3
4
5
6
import random as r
ls = [1,2,3,4,5,6]
print(r.choice(ls))
r.shuffle(ls)
print(ls)
print(r.sample(ls,3))
Licensed under CC BY-NC-SA 4.0
已存在于互联网
发表了126篇文章 · 总计210.25k字
萌ICP备20267077号
Powered by ctOS