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使用循环实现批量创建文件夹示例
Mar 25 Python
在Python的一段程序中如何使用多次事件循环详解
Sep 07 Python
Python3调用微信企业号API发送文本消息代码示例
Nov 10 Python
python2.7+selenium2实现淘宝滑块自动认证功能
Feb 24 Python
Python判断字符串是否为字母或者数字(浮点数)的多种方法
Aug 03 Python
python reverse反转部分数组的实例
Dec 13 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 Python
浅谈python常用程序算法
Mar 22 Python
python解压TAR文件至指定文件夹的实例
Jun 10 Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 Python
Python3和PyCharm安装与环境配置【图文教程】
Feb 14 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 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递归返回值时出现的问题解决办法
2013/02/19 PHP
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
PHP CURL CURLOPT参数说明(curl_setopt)
2013/09/30 PHP
IIS6.0 开启Gzip方法及PHP Gzip函数分享
2014/06/08 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
tbody元素支持嵌套的注意方法
2007/03/24 Javascript
JavaScript window.setTimeout() 的详细用法
2009/11/04 Javascript
jQuery 开天辟地入门篇一
2009/12/09 Javascript
js导出table到excel同时兼容FF和IE示例
2013/09/03 Javascript
使用ImageMagick进行图片缩放、合成与裁剪(js+python)
2013/09/16 Javascript
js设置cookie过期及清除浏览器对应名称的cookie
2013/10/24 Javascript
js语法学习之判断一个对象是否为数组
2014/05/13 Javascript
js判断当前浏览器类型,判断IE浏览器方法
2014/06/02 Javascript
jQuery实现鼠标划过修改样式的方法
2015/04/14 Javascript
常用DOM整理
2015/06/16 Javascript
基于jQuery实现响应式圆形图片轮播特效
2015/11/25 Javascript
jQuery的promise与deferred对象在异步回调中的作用
2016/05/03 Javascript
JS实现倒计时(天数、时、分、秒)
2016/11/16 Javascript
JS冒泡事件与事件捕获实例详解
2016/11/25 Javascript
zTree树形插件异步加载方法详解
2017/06/14 Javascript
js实现鼠标拖拽多选功能示例
2017/08/01 Javascript
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
Python httplib模块使用实例
2015/04/11 Python
Window10+Python3.5安装opencv的教程推荐
2018/04/02 Python
Python实现压缩文件夹与解压缩zip文件的方法
2018/09/01 Python
pygame实现雷电游戏雏形开发
2018/11/20 Python
python线程信号量semaphore使用解析
2019/11/30 Python
python 图像的离散傅立叶变换实例
2020/01/02 Python
5分钟弄清楚html5的drag and drop(小结)
2019/04/10 HTML / CSS
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
教育科研先进个人材料
2014/01/26 职场文书
分公司经理任命书
2014/06/05 职场文书
个人工作年终总结
2015/03/09 职场文书
煤矿安全生产管理协议书
2016/03/22 职场文书
zabbix agent2 监控oracle数据库的方法
2021/05/13 Oracle
windows系统搭建WEB服务器详细教程
2022/08/05 Servers