Python 之redis操作
Redis
是一个高性能的key-value数据库,是一种非关系型的数据库。有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
1、redis安装。
在cmd命令窗口输入:pip install redis
2、连接redis。
r = redis.Redis(host='127.0.0.1',password='HK139bc&*',db=1,port=6379)
说明:host是IP地址,password是redis的密码,db连接上之后使用的数据库,redis默认有15个数据库,port是端口号,默认是6379
3、redis增删改查,针对string类型的操作。
1)、数据库里面新增一个值:
r.set('qianqian','帅!') #数据库里面新增一个值.k是qianqian,value是帅,redis里面有这个k 的话就修改value,没有的话就增加k,和value
r.set('xiehong:qianqian','帅!') #数据库里面新增一个值,如果k里面有冒号,那么插入成功之后会在redis里面生成一个以冒号前面内容命名的文件夹
2)、获取k的value
print(r.get('xiehong:qianqian'))#获取k是xiehong:qianqian的value,默认返回结果是二进制
print(r.get('xiehong:qianqian').decode())#将二进制结果转为中文 #以上结果是:
b'\xe5\xb8\x85\xef\xbc\x81'
帅!
3)、删除k 和value
r.delete('xiehong:qianqian')#删除之后,对应的k和value都删除
4)、设置key的失效时间
r.setex('python_123','哈哈哈',20) #设置key的失效时间,最后这个参数是秒
5)、获取所有的key
r.keys('*xxx*'))#获取到所有的key
4、哈希类型(hash)的操作。
哈希类型的value就是嵌套字典。
1)、增加k和value
r.hset('xinxin','新新','1m8 100w存款')
r.hset('xinxin','红红','难道岁月 多少课 也可白上')
r.hset('xinxin','谦谦','但愿步过瞻仰 你亦明白 看穿真相')
以上key是xinxin,value是以下截图的数据,登录上redis上查看以上代码的操作结果:
2)、获取value,需要制定大key和小key进行获取相应的value,例如:
print(r.hget('xinxin','新新').decode()) #指定大key和小key获取对应的数据 #获取结果是:
1m8 100w存款
3)、获取所有的key和value
print(r.hgetall('xinxin')) #获取里面所有的k和-v
4)、删除key
r.hdel('stu_info','gyx') #删除指定key
r.delete('stu_info') #删除整个key
5)、设置第一个key的失效时间
r.expire('xinxin',100) #第一个key设置失效时间
5、补充字符串转换
s='呵呵'
s.encode() #把字符串转成二进制
hwt = b'sdfsdfsdf'
hwt.decode() #把bytes类型转成字符串
Python 之redis操作的更多相关文章
- Python 使用 Redis 操作
1.redis简介 redis是一款开源免费的高性能key-value数据库,redis特点: 支持更多的数据类型:字符串(String).列表(List).哈希(Map).数字(Int).集合(Se ...
- Python之Redis操作
1.安装驱动 输入命令:pip install redis 2.直接使用驱动 import redis r = redis.StrictRedis(host='127.0.0.1', port=637 ...
- python对redis的常用操作 下 (无序集合,有序集合)
无序集合: 首先介绍增加,删除和获得所有元素的方法.我将会用第二部分来讨论集合的特殊操作: In [136]: x.sadd("challenge", 1,2,3,4,5,6,7, ...
- python 全栈开发,Day101(redis操作,购物车,DRF解析器)
昨日内容回顾 1. django请求生命周期? - 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者po ...
- python笔记7:mysql、redis操作
模块安装: 数据操作用到的模块pymysql,需要通过pip install pymysql进行安装. redis操作用的模块是redis,需要通过pip install redis进行安装. 检验是 ...
- java、python及jmeter操作redis(接口自动化必备)
redis是nosql数据库之一,其存储结构简单,提供高性能服务,所以在架构中是很常用的. 在做接口自动化测试过程中,有时也会涉及到redis,比如:发送短信验证码,我们做接口自动化测试,如何模拟发送 ...
- python学习之操作redis
一.Redis安装网上很多可以查找 二.redis-py的安装,使用命令pip install redis. 安装过程中如果产生连接超时的错误,可以使用国内镜像参考如下 豆瓣:pip install ...
- python连接redis、redis字符串操作、hash操作、列表操作、其他通用操作、管道、django中使用redis
今日内容概要 python连接redis redis字符串操作 redis之hash操作 redis之列表操作 redis其他 通用操作,管道 django中使用redis 内容详细 1.python ...
- Redis学习---Redis操作之Python连接
PyCharm下的Redis连接 连接方式: 1. 操作模式 redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使 ...
随机推荐
- 彻底搞懂HTML5文件上传操作需要的相关资料
https://developer.mozilla.org/zh-CN/docs/Web/GuideMDN Web Guide https://developer.mozilla.org/zh-CN/ ...
- Jmeter配置元件——JDBC Connection Configuration参数化
在昨天Jmeter配置元件——CSV DataSet Config参数化一文中,有提到,在参数化时,还可以使用JDBC Connection Configuration配置元件实现,具体如何实现,如何 ...
- Apache Derby-01介绍DERBY
1.DERBY是什么: Apache Derby 是IBM于2004年贡献给Apache软件基金会的数据库,于2005年正式成为开源项目,Derby作为一个基于JAVA的关系型数据库框架,他拥有许多便 ...
- spring cloud Gateway简单使用
一.引子 2年前有幸使用过一次Spring Cloud (1.5.9),那次用的是ZUUL做网关,没有使用Gateway做网关,一直是个小遗憾.终于在2年后的19年底再次使用Spring Cloud, ...
- JDBC 详解笔记
# JDBC ## 1:What? 通过Java代码来操作数据库的. 数据库的种类很多,导致不同的数据库的操作方式是不同. 通过JDBC的标准完成.通过java语言完成对于数据库的CRUD. ## 2 ...
- python之面向对象中的多态
直接看代码: class Dog: def __init__(self,name): self.name = name def play(self): print("%s在汪汪汪" ...
- js中this指向问题(call,apply,bind)
call.apply.bind的作用是改变函数运行时this的指向. 如果你传的 context 就 null 或者 undefined,那么 window 对象就是默认的 context(严格模式下 ...
- EF 学习系列二 数据库表的创建和表关系配置(Fluent API、Data Annotations、约定)
上一篇写了<Entity Farmework领域建模方式 3种编程方式>,现在就Code First 继续学习 1.数据库表的创建 新建一个MVC的项目,在引用右击管理NuGet程序包,点 ...
- 小小知识点(二十一)如何修改PPT母版上无法直接点击修改的文字
1. 进入PPT后,选择下图右上角红色圈出的“视图”,接着选择下方红色圈出的“幻灯片母版”: 2.点击进入母版,如下图所示,最上面一栏第一个选项变成了“幻灯片母版”,在下面一栏最右边变成了“关闭母版视 ...
- 解决阿里云专有网络ftp无法远程链接
配置好ftp后本机测试可用但无法远程连接 网络上找了很多方法,配置防火墙出入站规则均无效 提交阿里云工单,给出解决方法,测试后可用