首先,我们将Python中的随机函数列出来,然后再进行详细讲解
Python中主要有8中随机函数,分别是:
- choice(seq)
- randrange([start,]stop[,step])
- random()
- seed([x])
- shuffle(lst)
- uniform(x,y)
- randint(x,y)
- sample(sequence,length)
需要注意的是,这些方法是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法
1.choice(seq)
choice(seq)方法返回一个列表,元祖或者字符串当中的一个随机项。
import random
print('返回列表[1,2,3,4,5]中的一个随机项:',random.choice([1,2,3,4,5]))
print('返回range(100)当中的一个数:',random.choice(range(100)))
print('返回字符串'range'中的一个字符:',random.choice('range'))
运行结果:
返回列表[1,2,3,4,5]中的一个随机项:2
返回range(100)当中的一个数: 68
返回字符串'range'中的一个字符: g
2.randrange()
randrange([start,]stop[,step])返回一个从start开始,到stop结束的随机数,包含start,不包含stop,step为步长,默认步长为1.
import random
print('从1到100随机选取一个偶数',random.randrange(0,100,2))
print('从1到100随机选取一个奇数',random.randrange(1,100,2))
3.random()
随机生成一个随机数,范围在0到1之间,没有参数。
4.seed([x])
修改随机数种子。x可以是任意数字
当我们调用random.random()时,每一次生成的随机数都是随机的,但是如果我们先修改了随机数种子,如seed(3),然后调用random.random()将生成一个随机数,第二次再调用random.random()将生成和第一次调用时一样的随机数。
5.shuffle(lst)
将lst列表中的元素随机排序
import random
list=[20,15,4,5]
random.shuffle(list)
print('将列表[20,15,4,5]随机排序',list)
6.uniform(x,y)
随机生成一个数,在x和y之间。
import random
print('随机生成一个(5,10)之间的浮点数',random.uniform(5,10))
print('随机生成一个(5,10)之间的两位浮点数',random.uniform(5,10),2)
7.randint(x,y)
随机生成一个(x,y)之间的整数,
import random
print(random.randint(2222,4444))
8.sample(seq,length)
从指定的序列中,随机截取指定长度的片段,不会修改原序列
import random
list=random.sample('abcd1234',3)
str=''.join(list)
>>str
>>'a31d'
来源:CSDN
作者:一个标识符
链接:https://blog.csdn.net/qq_37328698/article/details/104295300