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 图片验证码代码
Dec 07 Python
python判断给定的字符串是否是有效日期的方法
May 13 Python
Python使用Django实现博客系统完整版
Sep 29 Python
Python使用add_subplot与subplot画子图操作示例
Jun 01 Python
python读取word文档,插入mysql数据库的示例代码
Nov 07 Python
python使用tkinter库实现五子棋游戏
Jun 18 Python
使用python和pygame制作挡板弹球游戏
Dec 03 Python
pyftplib中文乱码问题解决方案
Jan 11 Python
python图片指定区域替换img.paste函数的使用
Apr 09 Python
Python 将 QQ 好友头像生成祝福语的实现代码
May 03 Python
浅谈Python 钉钉报警必备知识系统讲解
Aug 17 Python
用Python将GIF动图分解成多张静态图片
Jun 11 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中养成7个面向对象的好习惯
2010/01/28 PHP
解析使用ThinkPHP应该掌握的调试手段
2013/06/20 PHP
PHP 等比例缩放图片详解及实例代码
2016/09/18 PHP
php表单文件iframe异步上传实例讲解
2017/07/26 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
2007/04/27 Javascript
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
JQuery onload、ready概念介绍及使用方法
2013/04/27 Javascript
关于javascript event flow 的一个bug详解
2013/09/17 Javascript
javascript修改表格背景色实例代码分享
2013/12/10 Javascript
jQuery对Select的操作大集合(收藏)
2013/12/28 Javascript
JavaScript取得WEB安全颜色列表的方法
2015/07/14 Javascript
iscroll碰到Select无法选择下拉刷新的解决办法
2016/05/21 Javascript
webpack常用配置项配置文件介绍
2016/11/07 Javascript
vue之数据交互实例代码
2017/06/16 Javascript
20行js代码实现的贪吃蛇小游戏
2017/06/20 Javascript
mui上拉加载更多下拉刷新数据的封装过程
2017/11/03 Javascript
如何在JavaScript中优雅的提取循环内数据详解
2019/03/04 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
[02:33]2018 DOTA2亚洲邀请赛回顾视频 再次拾起那些美妙的时刻
2018/04/10 DOTA
数据挖掘之Apriori算法详解和Python实现代码分享
2014/11/07 Python
详细解读Python的web.py框架下的application.py模块
2015/05/02 Python
python版本的仿windows计划任务工具
2018/04/30 Python
详解python opencv、scikit-image和PIL图像处理库比较
2019/12/26 Python
Python如何获取文件指定行的内容
2020/05/27 Python
Python多线程threading创建及使用方法解析
2020/06/17 Python
通过代码实例了解Python sys模块
2020/09/14 Python
解决python3.6用cx_Oracle库连接Oracle的问题
2020/12/07 Python
HTML5 canvas画矩形时出现边框样式不一致的解决方法
2013/10/14 HTML / CSS
adidas美国官网:adidas US
2016/09/21 全球购物
干部行政关系介绍信
2014/01/17 职场文书
公司节能减排倡议书
2014/05/14 职场文书
机械机修工岗位职责
2014/08/03 职场文书
财政局个人总结
2015/03/04 职场文书
搭建Yolov5服务器
2022/04/30 Servers