Python随机数random模块使用指南


Posted in Python onSeptember 09, 2016

random 模块是Python自带的模块,除了生成最简单的随机数以外,还有很多功能。

random.random()

用来生成一个0~1之间的随机浮点数,范围[0,10

>>> import random
>>> random.random()
0.5038461831828231

random.uniform(a,b)

返回a,b之间的随机浮点数,范围[a,b]或[a,b),取决于四舍五入,a不一定要比b小。

>>> random.uniform(50,100)
76.81733455677832
>>> random.uniform(100,50)
52.98730193316595

random.randint(a,b)

返回a,b之间的整数,范围[a,b],注意:传入参数必须是整数,a一定要比b小

>>> random.randint(50,100)
54
>>> random.randint(100,50)
 
Traceback (most recent call last):
 File "<pyshell#6>", line 1, in <module>
  random.randint(100,50)
 File "C:\Python27\lib\random.py", line 242, in randint
  return self.randrange(a, b+1)
 File "C:\Python27\lib\random.py", line 218, in randrange
  raise ValueError, "empty range for randrange() (%d,%d, %d)" % (istart, istop, width)
ValueError: empty range for randrange() (100,51, -49)
>>> random.randint(50.5,100.6)
 
Traceback (most recent call last):
 File "<pyshell#7>", line 1, in <module>
  random.randint(50.5,100.6)
 File "C:\Python27\lib\random.py", line 242, in randint
  return self.randrange(a, b+1)
 File "C:\Python27\lib\random.py", line 187, in randrange
  raise ValueError, "non-integer arg 1 for randrange()"
ValueError: non-integer arg 1 for randrange()

random.randrang([start], stop[, step])

返回有个区间内的整数,可以设置step。只能传入整数,random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, … 96, 98]序列中获取一个随机数。

>>> random.randrange(100)
58
>>> random.randrange(10,100,2)
54

random.choice(sequence)

从序列中随机获取一个元素,list, tuple, 字符串都属于sequence。这里的sequence 需要是有序类型。random.randrange(10,100,2)在结果上与 random.choice(range(10,100,2) 等效。

>>> random.choice(("stone","scissors","paper"))
'stone'
>>> random.choice(["stone","scissors","paper"])
'scissors'
>>> random.choice("Random")
'm'

random.shuffle(x[,random])

用于将列表中的元素打乱,俗称为洗牌。会修改原有序列。

>>> poker = ["A","2","3","4","5","6","7","8","9","10","J","Q","K"]
>>> random.shuffle(poker)
>>> poker
['4', '10', '8', '3', 'J', '6', '2', '7', '9', 'Q', '5', 'K', 'A']

random.sample(sequence,k)

从指定序列中随机获取k个元素作为一个片段返回,sample函数不会修改原有序列。

>>> poker = ["A","2","3","4","5","6","7","8","9","10","J","Q","K"]
>>> random.sample(poker,5)
['4', '3', '10', '2', 'Q']

上述几个方式是Python常用的一些方法,但是关于随机数还有很多的故事。下回分解~

Python 相关文章推荐
pycharm 使用心得(四)显示行号
Jun 05 Python
Python回调函数用法实例详解
Jul 02 Python
python调用摄像头显示图像的实例
Aug 03 Python
python 自定义异常和异常捕捉的方法
Oct 18 Python
对pandas中iloc,loc取数据差别及按条件取值的方法详解
Nov 06 Python
python读取文件名并改名字的实例
Jan 07 Python
Python一键安装全部依赖包的方法
Aug 12 Python
PYTHON绘制雷达图代码实例
Oct 15 Python
常用python爬虫库介绍与简要说明
Jan 25 Python
python随机生成大小写字母数字混合密码(仅20行代码)
Feb 01 Python
Python使用socketServer包搭建简易服务器过程详解
Jun 12 Python
Python利用命名空间解析XML文档
Aug 10 Python
利用ctypes提高Python的执行速度
Sep 09 #Python
python实现批量监控网站
Sep 09 #Python
利用python批量检查网站的可用性
Sep 09 #Python
Python如何判断数独是否合法
Sep 08 #Python
python框架django基础指南
Sep 08 #Python
python中星号变量的几种特殊用法
Sep 07 #Python
Python 实现 贪吃蛇大作战 代码分享
Sep 07 #Python
You might like
如何选购合适的收音机
2021/03/01 无线电
MySQL数据源表结构图示
2008/06/05 PHP
超级强大的表单验证
2006/06/26 Javascript
jquery 插件学习(六)
2012/08/06 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
jquery统计输入文字的个数并对其进行判断
2014/01/07 Javascript
JS中判断null、undefined与NaN的方法
2014/03/26 Javascript
JS弹出可拖拽可关闭的div层完整实例
2015/02/13 Javascript
深入理解Java线程编程中的阻塞队列容器
2015/12/07 Javascript
jquery配合.NET实现点击指定绑定数据并且能够一键下载
2016/10/28 Javascript
原生js编写焦点图效果
2016/12/08 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
基于JavaScript实现淘宝商品广告效果
2017/08/10 Javascript
AngularJS通过ng-Img-Crop实现头像截取的示例
2017/08/17 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
Vue2.0子同级组件之间数据交互方法
2018/02/28 Javascript
Vue 路由 过渡动效 数据获取方法
2018/07/31 Javascript
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
vue axios 简单封装以及思考
2018/10/09 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
2019/09/04 Javascript
python中zip()方法应用实例分析
2016/04/16 Python
Numpy中stack(),hstack(),vstack()函数用法介绍及实例
2018/01/09 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
Python过滤掉numpy.array中非nan数据实例
2020/06/08 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
HTML5全屏(Fullscreen)API详细介绍
2015/04/24 HTML / CSS
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
美国在线宠物商店:Chewy
2019/01/12 全球购物
中学生个人自我评价
2014/02/06 职场文书
师范教师专业大学生职业生涯规划范文
2014/03/02 职场文书
公司委托书范本
2014/04/04 职场文书
电子专业毕业生自荐信
2014/05/25 职场文书
2014年内部审计工作总结
2014/12/09 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
开发者首先否认《遗弃》被取消的传言
2022/04/11 其他游戏