Python学习笔记--random库的使用

基本随机数函数

seed()

用于设定随机数种子,默认是以系统时间为种子

#默认以系统时间为种子
random.seed()
for i in range(5):
    print(random.random())

第一次运行结果

0.26734155407208104
0.42545661328469664
0.9117954845687343
0.24536621387699853
0.4507611579106827

第二次运行结果

0.2224361976810766
0.5394607691574935
0.6576528924236562
0.37023121607844
0.47283418395156696

每次运行结果产生的随机数都不同,说明默认情况下以系统时间为种子产生的随机数是难以复现的

import random
#设定随机数种子为10
random.seed(10)
#产生随机数
for i in range(5):
    print(random.random())

运行结果

0.5714025946899135
0.4288890546751146
0.5780913011344704
0.20609823213950174
0.81332125135732

无论运行多少次,都是上述结果,说明人为设定的种子产生的随机数是可以复现的

扩展随机数函数

randint(a,b)

生成一个[a,b]之间的整数

import random
r=random.randint(1,10)
print(r)

randrange(m,n[,k])

生成一个[m,n]之间以k为步长的随机整数

import random
#生成[10,100]之间步长为10的整数
r=random.randrange(10,100,10)
print(r)

getrandbits(k)

生成一个k比特长的随机整数

import random
r=random.getrandbits(16)
print(r)

运行结果

63811

uniform(a,b)

生成一个[a,b]之间的随机小数

import random
r=random.uniform(10,100)
print(r)

运行结果

40.33708598015649

choice(seq)

从序列seq中随机选择一个元素

import random
r=random.choice([1,2,3,4,5,6,7,8,9])
print(r)

运行结果

5

shuffle(seq)

将序列seq中元素随机排列,返回打乱后的序列

import random
s=[1,2,3,4,5,6,7,8,9]
random.shuffle(s)
print(s)

运行结果

[8, 3, 5, 7, 9, 1, 6, 2, 4]

猜你喜欢

转载自blog.csdn.net/weixin_51627036/article/details/122560050