一、random库的常用函数
函数 | 描述 |
seed(a=None) | 初始化随机数种子,默认值为当前系统时间 |
random() | 生成一个[0.0,1.0]之间的随机浮点数 |
randint(a,b) | 生成一个[a,b]之间的整数 |
getrandbits(k) | 生成一个k比特长度的随机整数 |
randrange(start,stop[,step]) | 生成一个[start,stop]之间以step为步数的随机整数 |
uniform(a,b) | 生成一个[a,b]之间的随机小数 |
choice(seq) | 从序列类型,例如列表中随机返回一个元素 |
shuffle(seq) | 将序列类型中的元素随机排列,返回打乱后的序列 |
sample(pop,k) | 从pop类型中随机选取k个元素,以列表类型返回 |
二、关于种子seed()
random生成的数据其实是“伪随机数”。生成随机数之前可以通过seed()函数指定随机数种子,随机种子一般是一个整数,只要种子相同,每次生成的随机数序列也先相同。这种情况便于测试和同步数据。例如:
>>>seed(125) #种子赋值125
>>>"{},{},{}".format(randint(1,10),randint(1,10),randint(1,10))
'4,4,10'
>>>"{},{},{}".format(randint(1,10),randint(1,10),randint(1,10))
'5,10,3'
>>>seed(125) #再次给随机种子赋值125
>>>"{},{},{}".format(randint(1,10),randint(1,10),randint(1,10))
'4,4,10'