Python random模块的使用示例


Posted in Python onOctober 10, 2020

常用的 random 模块方法

import random
 
# random.random()用于生成一个 0 到 1 的随机浮点数: 0 <= n < 1.0
print(random.random()) # 0.18246795790915304


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


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


# random.choice 从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。
# 这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。
# list, tuple, 字符串都属于sequence。
print(random.choice("Python")) # y
print(random.choice(["JGood", "is", "a", "handsome", "boy"])) # JGood
print(random.choice(("Tuple", "List", "Dict"))) # List


# random.sample(sequence, k),从指定序列中随机获取指定长度的片段。sample函数不会修改原有序列。
print(random.sample([1,2,3,4,5],3)) #[1,2,5]


# random.shuffle(x[, random]),用于将一个列表中的元素打乱。
p = ["Python", "is", "powerful", "simple", "and so on..."]
print(random.shuffle(p))
# ['powerful', 'simple', 'is', 'Python', 'and so on...']


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

实际应用

import random
lis = [1,2,3,4,5,6,7,8,9,10]

# 随机生成浮点数
print(random.random())     #随机返回0~1之间的浮点数
0.47626693393991737
print(random.uniform(1,10))   #随机返回1~10之间的浮点数
4.0844448042717225

# 随机生成整数
print(random.randint(1,10))     #随机生成1~10之间的整数
8
print(random.randrange(0,10,2))   #随机生成0~10之间的偶数
8
print(random.randrange(1,10,2))   #随机生成1~10之间的基数
1

# 操作序列、字符串
## 从序列、字符串中随机返回一个元素
print(random.choice(lis))
4
print(random.choice('abcdefg'))
g

## 随机截取序列、字符串中指定长度片段
print(random.sample(lis,2))
[9, 4]
print(random.sample('abcdefg',2))
['f', 'a']

## 打乱一个序列
random.shuffle(lis)
print(lis)
[7, 6, 1, 2, 10, 3, 4, 8, 5, 9]

生成随机验证码

import random
 
checkcode = ''
for i in range(6):
  current = random.randrange(0, 6)
  if current != i:
    temp = chr(random.randint(65, 90))
  else:
    temp = random.randint(0, 9)

  checkcode += str(temp)
print(checkcode)

以上就是Python random模块的使用示例的详细内容,更多关于Python random模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python计算最小优先级队列代码分享
Dec 18 Python
Python实现控制台进度条功能
Jan 04 Python
Python基于回溯法子集树模板解决选排问题示例
Sep 07 Python
python使用Pycharm创建一个Django项目
Mar 05 Python
TensorFlow实现iris数据集线性回归
Sep 07 Python
Python3中在Anaconda环境下安装basemap包
Oct 21 Python
python pandas消除空值和空格以及 Nan数据替换方法
Oct 30 Python
关于pytorch中网络loss传播和参数更新的理解
Aug 20 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
Oct 11 Python
python groupby 函数 as_index详解
Dec 16 Python
Django框架教程之中间件MiddleWare浅析
Dec 29 Python
Django ModelForm组件原理及用法详解
Oct 12 Python
python 装饰器的使用示例
Oct 10 #Python
python使用bs4爬取boss直聘静态页面
Oct 10 #Python
通过案例解析python鸭子类型相关原理
Oct 10 #Python
通过实例解析python subprocess模块原理及用法
Oct 10 #Python
如何使用python自带IDLE的几种方法
Oct 10 #Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
Oct 10 #Python
python如何利用Mitmproxy抓包
Oct 10 #Python
You might like
解析PHP跳出循环的方法以及continue、break、exit的区别介绍
2013/07/01 PHP
实例讲解PHP表单处理
2019/02/15 PHP
JQuery动态创建DOM、表单元素的实现代码
2011/08/09 Javascript
jquery隐藏标签和显示标签的实例
2013/11/11 Javascript
Javascript中typeof 用法小结
2015/05/12 Javascript
jQuery获取及设置表单input各种类型值的方法小结
2016/05/24 Javascript
新入门node.js必须要知道的概念(必看篇)
2016/08/10 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
Angular中管道操作符(|)的使用方法
2017/12/15 Javascript
vue2.0 循环遍历加载不同图片的方法
2018/03/06 Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
2018/03/20 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
layui获取选中行数据的实例讲解
2018/08/19 Javascript
Vue学习之常用指令实例详解
2020/01/06 Javascript
解决vue的touchStart事件及click事件冲突问题
2020/07/21 Javascript
如何在 Vue 中使用 JSX
2021/02/14 Vue.js
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
利用selenium 3.7和python3添加cookie模拟登陆的实现
2017/11/20 Python
python 设置文件编码格式的实现方法
2017/12/21 Python
scrapy爬虫实例分享
2017/12/28 Python
python2.7到3.x迁移指南
2018/02/01 Python
Django-Rest-Framework 权限管理源码浅析(小结)
2018/11/12 Python
Python 获取项目根路径的代码
2019/09/27 Python
使用python实现男神女神颜值打分系统(推荐)
2019/10/31 Python
如何在vscode中安装python库的方法步骤
2021/01/06 Python
计算机专业推荐信范文
2013/11/27 职场文书
运动会表扬稿大全
2014/01/16 职场文书
蜜蜂引路教学反思
2014/02/04 职场文书
解除劳动合同协议书
2014/04/14 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
2014国庆65周年领导讲话稿(3篇)
2014/09/21 职场文书
群众路线个人剖析材料及整改措施
2014/11/04 职场文书
2014年信访工作总结
2014/11/17 职场文书
WINDOWS下安装mysql 8.x 的方法图文教程
2022/04/19 MySQL