在前面我们曾多次提到过random模块,在这节将详细的介绍一下random模块的用法。random模块主要为我们提供一些生成随机数的功能,下面表格总结了random模块中几个常用函数。
生成一个0-1的随机浮点数,看下面的例子:
importrandoma=random.random()b=random.random()c=random.random()print(a)print(b)print(c)
输出结果为:
0.7879655602680620.205244861798563160.8732074424182436
我们可以看出返回的浮点数的值和位数都不一定相同。
我需要注意randint和randrange的区别,randint是包含a和b,后面会提到的randrange是不含a和b的。
我们可以通过测试来看一下是否包含上下限,代码如下:
importrandoma=random.randint(1,3)b=random.randint(1,3)c=random.randint(1,3)print(a)print(b)print(c)
输出结果为:
312
我们可以看出是包含a和b的值的。
我们主要通过测试来看一下这种方法是否包含a和b的值,看下面代码:
importrandoma=random.randrange(1,3)b=random.randrange(1,3)c=random.randrange(1,3)d=random.randrange(1,3)print(a)print(b)print(c)print(d)
输出结果为:
2212
通过测试结果我们可以看出只有1和2,是不包含下界3的,大家也可以自己尝试一下运行一下。
random.shuffle(x)函数我们在第二节中使用过,它可以将一个序列进行重新排序,但是需要注意,它只针对于可改变的序列,因此它常被用于打乱列表中的元素。
importrandoma=['d','o','t','c','p','p']print('打乱前的列表:',a)random.shuffle(a)print('打乱后的列表:',a)
输出结果为:
打乱前的列表:['d','o','t','c','p','p']打乱后的列表:['c','d','p','p','t','o']
random.choice(x)可以返回一个序列中的一个随机元素,它的使用方式如下:
importrandoma=['d','o','t','c','p','p']b='dotcpp'c=('d','o','t','c','p','p')print(random.choice(a))print(random.choice(b))print(random.choice(c))
输出结果为:
odp
用于生成指定范围内的随机浮点数,代码如下:
importrandoma=random.uniform(1.1,3.3)b=random.uniform(5,6)c=random.uniform(100,200)print(a)print(b)print(c)
输出结果为:
2.58026565795090875.977193880181603141.03779834775494
关于random模块的功能就 讲到这里,上面六种用法囊括了生成随机数的常用方法,如果想要使用更多的random模块中的方法,可以在Python帮助文档中进行查阅学习。