Python random库生成随机数详解

本文介绍了Python标准库random的功能及用法,详细解释了如何利用random库生成一系列随机数,包括基本随机函数如seed()和random(),以及扩展随机函数如randint(), randrange(), getrandbits(), uniform(), choice()和shuffle()。
摘要由CSDN通过智能技术生成

今天继续给大家介绍Python相关知识,本文主要内容是Python random库生成随机数详解。

一、Random库简介

random库是Python的标准库之一,可以使用该库来生成一系列的随机函数。random库使用梅森旋转算法生成一个伪随机序列,在一般的工程实践中,我们可以认为这是一个随机序列。(注意:关于梅森旋转算法,以及伪随机序列等概念,可以参考数学和密码学相关知识)
random库的使用需要先引用该库,执行命令:

import random

即可。

二、Random库常用函数

random库中有两类函数,一种是基本随机函数,另一种是扩展随机数函数。
基本随机函数又有两个,分别是seed()函数和random()函数。
seed()函数可以用一个数做参数,表示指定随机数的“种子”,梅森旋转算法生成伪随机数的条件需要一个随机数作为种子,如果这个“种子”是确定的,那么梅森旋转算法生成的随机数序列也是确定的。如果我们不使用这个函数作为“种子”,那么Python会使用当前的系统时间作为种子,同样可以生成一系列的随机数序列。事实上,指定seed()函数,真正作用在于生成一个可复现的随机数序列,这对于一些程序的调试、试验很有帮助。random()函数可以用来生成一个0-1之间的随机小数(包括0,但是不包含1)。
除了上述基本随机函数外,random库还提供了6个扩展随机函数,这6个函数,可以帮助我们在特定情况下,生成特定的随机序列。这6个函数及其作用如下表所示:

函数作用
randint(x,y)随机生成一个介于x和y之间(包含x和y)的整数,x和y必须是整数,并且x必须小于或等于y
randrange(x,y,k)随机生成一个在x和y之间(包含x和y)的,步长为k的整数。参数k可选,在不指定参数k时,k默认为1
getrandbits(x)随机生成一个x比特长的随机整数
uniform(x,y)随机生成一个在x和y之间(包含x和y)的随机小数,这里的x和y大小任意
choice(seq)在这里seq是一个序列,表示从序列中随机选择一个元素
shuffle(seq)在这里seq是一个序列,表示将序列中的元素随机排列后返回,注意该函数会影响序列本身

三、Random库使用示例

最后,为了更好的帮助大家学习random库,给大家提供一些random库的使用案例。
random基本随机函数运用如下所示:
在这里插入图片描述
从上图中我们可以看到,如果我们使用seed()函数指定了“种子”,那么生成的随机数序列也是固定的,这就实现了“可复现”的随机序列。
random扩展随机函数如下所示:
在这里插入图片描述
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值