python中的random模块和相关函数详解


Posted in Python onApril 22, 2022

一、random模块简介

Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等,即用来生成随机数。

二、random模块重要函数

(1)random.random()函数

random.random()函数,它会生成一个随机的浮点数,范围是在0.0~1.0之间

>>> import random
>>> print(random.random())
0.2203627723039484
>>> print(random.random())
0.124968990086466
>>> print(random.random())
0.4156471793210381

注意:不能这样写random.Random()

>>> print(random.Random())
<random.Random object at 0x00000236EE7E9A88>

(2)random.randint()函数

random.randint()函数原型为:random.randint(a, b),随机生一个整数int类型,可以指定这个整数的范围,用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b。

>>> random.randint(12,23)
12
>>> random.randint(12,23)
19
>>> random.randint(12,12) //随机值不变
12
>>> random.randint(12,12)
12
>>> random.randint(-8,12)
3
>>> random.randint(-8,12)
-6
>>> random.randint(-8,12)
-2

(3)random.uniform()函数

random.uniform()函数的原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,其中一个参数是上限,另一个是参数下限。

>>> random.uniform(2.1,2.8)
2.571350659171257
>>> random.uniform(21,48)
28.09088226941614
>>> random.uniform(48,21) //不推荐这样写,一般来说第一个参数的数值要小于第二个参数的数值
46.42492852213456
>>> random.uniform(-4,21)
7.81666451991304
>>> random.uniform(-4,21)
6.382703447293181
>>> random.uniform(-4.2,2.8)
-0.4436054791279309
>>> random.uniform(-4.2,2.8)
2.7511228545721043

(4)random.randrange()函数

random.randrange()函数的原型为:random.randrange([start], stop[, step]),从指定范围内,按指定基数递增的集合中 获取一个随机数。start:开始数值,stop:结束数值,step1:步长,默认为1,可以不写

>>> random.randrange(0,56,8)
24
>>> random.randrange(0,56,8)
40
>>> random.randrange(0,56,5)
55
>>> random.randrange(0,56,5)
15
>>> random.randrange(-8,6,2)
-2
>>> random.randrange(-8,6,2)
4
>>> random.randrange(-8,6) //步长默认为1,此时可以不用写
5
>>> random.randrange(-8,6)

(5)random.choice()函数

random.choice()函数原型为:random.choice(sequence),可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等。参数sequence表示一个有序类型。sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。

>>> random.choice("12045ouhuhjn") //字符串
'u'
>>> random.choice("12045ouhuhjn") 
'4'
>>> random.choice((1,5,4,"j",4))  //元组
1
>>> random.choice((1,5,4,"j",4))
5
>>> random.choice([1,4,8,6,0,3])  //列表
4
>>> random.choice([1,4,8,6,0,3])

(6)random.shuffle()函数

random.shuffle()函数的原型为:random.shuffle(x[, random]),用于将一个列表中的元素打乱。

>>> p = ["Python", "is", "powerful", "simple", "and so on..."]
>>> random.shuffle(p)
>>> print(p)
['powerful', 'Python', 'simple', 'is', 'and so on...']
>>> lst = [1,2,5,4,7]
>>> random.shuffle(lst)
>>> print(lst1)
[4, 7, 5, 2, 1]

(7)random.sample()函数

random.sample()函数的原型为:random.sample(sequence, k),从指定序列中随机获取指定长度的片断,不作原地修改,返回列表。 如果k大于sequence元素个数的话会报错。

>>> lst = [2,3,5,8,7,9,6,4]
>>> random.sample(lst,5)
[5, 9, 7, 8, 6]
>>> tup = [1,"f",8,"8f",0,7,5,8]
>>> random.sample(tup,4)
[7, '8f', 'f', 8]
>>> str1 = "i love you 1314"
>>> random.sample(str1,4)
['l', 'e', 'o', 'u']

到此这篇关于python中的随机数 Random介绍的文章就介绍到这了!


Tags in this post...

Python 相关文章推荐
Python下的Mysql模块MySQLdb安装详解
Apr 09 Python
Python切片用法实例教程
Sep 08 Python
多版本Python共存的配置方法
May 22 Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 Python
Python中实现最小二乘法思路及实现代码
Jan 04 Python
在windows下Python打印彩色字体的方法
May 15 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
Jul 11 Python
python代码编写计算器小程序
Mar 30 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 Python
tensorflow 保存模型和取出中间权重例子
Jan 24 Python
Pytorch实现将模型的所有参数的梯度清0
Jun 24 Python
Python 恐龙跑跑小游戏实现流程
Feb 15 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
Apr 21 #Python
微信小程序调用python模型
Apr 21 #Python
使用python绘制分组对比柱状图
使用python将HTML转换为PDF pdfkit包(wkhtmltopdf) 的使用方法
Apr 21 #Python
Python尝试实现蒙特卡罗模拟期权定价
Python matplotlib绘制条形统计图 处理多个实验多组观测值
python绘制简单直方图(质量分布图)的方法
You might like
PHP的几个常用数字判断函数代码
2012/04/24 PHP
php程序员应具有的7种能力小结
2014/11/27 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
php创建无限级树型菜单
2015/11/05 PHP
PHP写的简单数字验证码实例
2017/05/23 PHP
php+redis实现消息队列功能示例
2019/09/19 PHP
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
2011/12/08 Javascript
javascript parseInt() 函数的进制转换注意细节
2013/01/08 Javascript
处理及遍历XML文档DOM元素属性及方法整理
2013/08/23 Javascript
JS+CSS实现的经典圆角下拉菜单效果代码
2015/10/21 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
jQuery实现下拉框多选 jquery-multiselect 的实例代码
2016/07/14 Javascript
ionic2 tabs使用 Modal底部tab弹出框
2016/12/30 Javascript
JS实现批量上传文件并显示进度功能
2017/06/27 Javascript
详解刷新页面vuex数据不消失和不跳转页面的解决
2018/01/30 Javascript
利用vscode调试编译后的js代码详解
2018/05/14 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
vue在index.html中引入静态文件不生效问题及解决方法
2019/04/29 Javascript
vue-devtools的安装和使用步骤详解
2019/10/17 Javascript
JavaScript中继承原理与用法实例入门
2020/05/09 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
Python中统计函数运行耗时的方法
2015/05/05 Python
python入门:这篇文章带你直接学会python
2018/09/14 Python
Python导入数值型Excel数据并生成矩阵操作
2020/06/09 Python
详解python UDP 编程
2020/08/24 Python
南非最大的在线时尚商店:Zando
2019/07/21 全球购物
小车司机岗位职责
2013/11/25 职场文书
光信息科学与技术专业职业生涯规划
2014/03/13 职场文书
机关办公室岗位职责
2014/04/16 职场文书
高三学生评语大全
2014/04/25 职场文书
软件工程毕业生自荐信
2014/07/04 职场文书
2014年幼儿园教学工作总结
2014/12/04 职场文书
建筑技术负责人岗位职责
2015/04/13 职场文书
检讨书怎么写
2015/05/07 职场文书
乡镇科协工作总结2015
2015/05/19 职场文书
中秋节随笔
2015/08/15 职场文书