Python random模块(获取随机数)常用方法和使用例子


Posted in Python onMay 13, 2014

random.random
random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0

random.uniform
random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a

print random.uniform(10, 20)
print random.uniform(20, 10)
# 18.7356606526
# 12.5798298022 

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

print random.randint(12, 20)  # 生成的随机数 n: 12 <= n <= 20
print random.randint(20, 20)  # 结果永远是20     
# print random.randint(20, 10)  # 该语句是错误的。下限必须小于上限

random.randrange
random.randrange([start], stop[, step]),从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效

random.choice
random.choice从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。有关sequence可以查看python手册数据模型这一章。下面是使用choice的一些例子:

print random.choice("学习Python")
print random.choice(["JGood", "is", "a", "handsome", "boy"])
print random.choice(("Tuple", "List", "Dict")) 

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

p = ["Python", "is", "powerful", "simple", "and so on..."]
random.shuffle(p)
print p
# ['powerful', 'simple', 'is', 'Python', 'and so on...'] 

random.sample
random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list, 5)  # 从list中随机获取5个元素,作为一个片断返回
print slice
print list  # 原有序列并没有改变

随机整数:

>>> import random
>>> random.randint(0,99)
# 21

随机选取0到100间的偶数:

>>> import random
>>> random.randrange(0, 101, 2)
# 42

随机浮点数:

>>> import random
>>> random.random()
0.85415370477785668
>>> random.uniform(1, 10)
# 5.4221167969800881

随机字符:

>>> import random
>>> random.choice('abcdefg&#%^*f')
# 'd'

多个字符中选取特定数量的字符:

>>> import random
random.sample('abcdefghij', 3)
# ['a', 'd', 'b']

多个字符中选取特定数量的字符组成新字符串:

>>> import random
>>> import string
>>> string.join( random.sample(['a','b','c','d','e','f','g','h','i','j'], 3) ).replace(" ","")
# 'fih'

随机选取字符串:

>>> import random
>>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )
# 'lemon'

洗牌:

>>> import random
>>> items = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(items)
>>> items
# [3, 2, 5, 6, 4, 1]
Python 相关文章推荐
R语言 vs Python对比:数据分析哪家强?
Nov 17 Python
JSONLINT:python的json数据验证库实例解析
Nov 28 Python
python 读取竖线分隔符的文本方法
Dec 20 Python
简单了解python的内存管理机制
Jul 08 Python
解决tensorflow训练时内存持续增加并占满的问题
Jan 19 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
Feb 18 Python
Jupyter Notebook打开任意文件夹操作
Apr 14 Python
快速解决jupyter notebook启动需要密码的问题
Apr 21 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
Apr 27 Python
pandas数据处理之绘图的实现
Jun 15 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
Nov 05 Python
Python爬虫过程解析之多线程获取小米应用商店数据
Nov 14 Python
Python自动化测试工具Splinter简介和使用实例
May 13 #Python
Python获取远程文件大小的函数代码分享
May 13 #Python
Python FTP操作类代码分享
May 13 #Python
python生成指定尺寸缩略图的示例
May 07 #Python
python读取浮点数和读取文本文件示例
May 06 #Python
python创建线程示例
May 06 #Python
Python Web服务器Tornado使用小结
May 06 #Python
You might like
PHP统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
destoon实现商铺管理主页设置增加新菜单的方法
2014/06/26 PHP
PHP 常用的header头部定义汇总
2015/06/19 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
Ajax+PHP实现的删除数据功能示例
2019/02/12 PHP
一段利用WSH获取登录时间的jscript代码
2008/05/11 Javascript
JavaScript 权威指南(第四版) 读书笔记
2009/08/11 Javascript
javascript中的onkeyup和onkeydown区别介绍
2013/04/28 Javascript
鼠标移动到图片名上,显示图片的简单实例
2013/07/14 Javascript
招聘网站基于jQuery实现自动刷新简历
2015/05/10 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
javascript获取wx.config内部字段解决微信分享
2016/03/09 Javascript
Javascript的表单验证-提交表单
2016/03/18 Javascript
vue-cli webpack2项目打包优化分享
2018/02/07 Javascript
从零开始搭建vue移动端项目到上线的步骤
2018/10/15 Javascript
使用react render props实现倒计时的示例代码
2018/12/06 Javascript
使用layui日期控件laydate对开始和结束时间进行联动控制的方法
2019/09/06 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
JavaScript十大取整方法实例教程
2020/12/03 Javascript
[49:08]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
深入理解Python中字典的键的使用
2015/08/19 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
2018/12/12 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
python实现图片插入文字
2019/11/26 Python
快速了解Python开发环境Spyder
2020/06/29 Python
python操作toml文件的示例代码
2020/11/27 Python
CSS3 清除浮动的方法示例
2018/06/01 HTML / CSS
Myprotein葡萄牙官方网站:英国优质运动营养品牌
2016/09/12 全球购物
MUGLER官方网站:蒂埃里·穆勒香水
2019/11/26 全球购物
剪彩仪式主持词
2014/03/19 职场文书
《悯农》教学反思
2014/04/28 职场文书
装饰工程师岗位职责
2014/06/08 职场文书
大学生迟到检讨书500字
2014/10/17 职场文书
小学远程教育工作总结
2015/08/13 职场文书
校园之声广播稿
2015/08/18 职场文书
企业团队精神心得体会
2016/01/19 职场文书