Python操作Redis及连接方式
前沿:随着互联网的高速发展,数据变得越来越重要,Python成为了人工智能的热门语言,而Nosql数据库已成为日常开发用品。
今天要写的是Python操作Redis
Redis的安装我就不介绍了,你可以看看Redis一系列的文章 我也有关于Redis安装一文.
https://www.cnblogs.com/ZaraNet/p/9433935.html
虽然Python是个大热门,但其方向不在于Web端,非常适合数据挖掘,我是web方向的工程师.. 热衷于.NET/C#,但也喜欢Python ,如果想要脚踏两只船,可以通过intro的nuget包进行两者兼容。
正文:
一.Python连接Redis
开发工具为Pycharm,包:Redis。可以直接进行安装第三方模块

redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRedis的子类

操作:
一.string 操作
添加值:
set(name, value, ex=None, px=None, nx=False, xx=False)
参数:
ex,过期时间(秒)
px,过期时间(毫秒)
nx,如果设置为True,则只有name不存在时,当前set操作才执行
xx,如果设置为True,则只有name存在时,岗前set操作才执行
可以渐变为 setnx(name, value)、psetex(name, time_ms, value)、setex(name, value, time)
获取值:get(name)根据key进行获取
还可以在获取的时候去截取值
getrange(key, start, end)
Hash操作
设置值
hset(name, key, value)
如果已经有这个name了 就修改,如果没有就创建
hmset(name, mapping)
在name对应的hash中批量设置键值对 例如
r.hmset('xx', {'k1':'v1', 'k2': 'v2'})
获取值
hget(name,key)
1 # 在name对应的hash中获取根据key获取value
hgetall(name)
1 获取name对应hash的所有键值
hlen(name)
1 # 获取name对应的hash中键值对的个数
hkeys(name)
1 # 获取name对应的hash中所有的key的值
hvals(name)
1 # 获取name对应的hash中所有的value的值
hexists(name, key)
1 # 检查name对应的hash是否存在当前传入的key
hdel(name,*keys)
1 # 将name对应的hash中指定key的键值对删除
操作list
lpush(name,values)

1 # 在name对应的list中添加元素,每个新的元素都添加到列表的最左边
2
3 # 如:
4 # r.lpush('oo', 11,22,33)
5 # 保存顺序为: 33,22,11
6
7 # 扩展:
8 # rpush(name, values) 表示从右向左操作

lpushx(name,value)
1 # 在name对应的list中添加元素,只有name已经存在时,值添加到列表的最左边
2
3 # 更多:
4 # rpushx(name, value) 表示从右向左操作
llen(name)
1 # name对应的list元素的个数
linsert(name, where, refvalue, value))

1 # 在name对应的列表的某一个值前或后插入一个新值
2
3 # 参数:
4 # name,redis的name
5 # where,BEFORE或AFTER
6 # refvalue,标杆值,即:在它前后插入数据
7 # value,要插入的数据

r.lset(name, index, value)

1 # 对name对应的list中的某一个索引位置重新赋值
2
3 # 参数:
4 # name,redis的name
5 # index,list的索引位置
6 # value,要设置的值

r.lrem(name, value, num)

1 # 在name对应的list中删除指定的值
2
3 # 参数:
4 # name,redis的name
5 # value,要删除的值
6 # num, num=0,删除列表中所有的指定值;
7 # num=2,从前到后,删除2个;
8 # num=-2,从后向前,删除2个

Python操作Redis及连接方式的更多相关文章
- python操作Redis安装、支持存储类型、普通连接、连接池
一.python操作redis安装和支持存储类型 安装redis模块 pip3 install redis 二.Python操作Redis之普通连接 redis-py提供两个类Redis和Strict ...
- Redis常用操作大全和Python操作Redis
简单使用 utils.py import redis POOL=redis.ConnectionPool(host='127.0.0.1',port=6379) view.py 第一种方式 (通用方式 ...
- Python—操作redis
Python操作redis 连接方式:点击 1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redis中设置值,默认不存在则创建, ...
- python——操作Redis
在使用django的websocket的时候,发现web请求和其他当前的django进程的内存是不共享的,猜测django的机制可能是每来一个web请求,就开启一个进程去与web进行交互,一次来达到利 ...
- Python操作Redis、Memcache、RabbitMQ、SQLAlchemy
Python操作 Redis.Memcache.RabbitMQ.SQLAlchemy redis介绍:redis是一个开源的,先进的KEY-VALUE存储,它通常被称为数据结构服务器,因为键可以包含 ...
- 第二百九十六节,python操作redis缓存-Hash哈希类型,可以理解为字典类型
第二百九十六节,python操作redis缓存-Hash哈希类型,可以理解为字典类型 Hash操作,redis中Hash在内存中的存储格式如下图: hset(name, key, value)name ...
- 第二百九十五节,python操作redis缓存-字符串类型
python操作redis缓存-字符串类型 首先要安装redis-py模块 python连接redis方式,有两种连接方式,一种是直接连接,一张是通过连接池连接 注意:以后我们都用的连接池方式连接,直 ...
- python操作Redis缓存
python操作Redis缓存 https://www.cnblogs.com/guotianbao/p/8683037.html 学习资料:电子书资源 联系邮箱:gmu1592618@gmail.c ...
- Python 操作Redis 转载篇
Python操作Redis数据库 连接数据库 StrictRedis from redis import StrictRedis # 使用默认方式连接到数据库 redis = StrictRedis( ...
随机推荐
- Thread类和Runnable接口实现多线程--2019-4-18
1.通过Thread实现 public class TestThread extends Thread{ public TestThread(String name) { super(name); } ...
- MongoDB的ORM框架——Morphia
1.引入pom <dependency> <groupId>org.mongodb.morphia</groupId> <artifactId>morp ...
- CentOS7配置mailx使用外部smtp服务器发送邮件
转自huskiesir的博客: 发送邮件的两种方式: 1.连接现成的smtp服务器去发送(此方法比较简单,直接利用现有的smtp服务器比如qq.新浪.网易等邮箱,只需要直接配置mail.rc文件即可实 ...
- 爬虫之正则和xpath
一.正解解析 常用正则表达式回顾: 单字符: . : 除换行以外所有字符 [] :[aoe] [a-w] 匹配集合中任意一个字符 \d :数字 [-] \D : 非数字 \w :数字.字母.下划线.中 ...
- android BLE Peripheral 做外设模拟设备,供ios、android 连接通讯。
为了能让其它设备可以发现其设备,先启动特定广播.看自己需要什么广播格式. 对于广播可见的mac address: 在调用startAdvertising();时,mac address 就会改变. 并 ...
- JavaScript前端开发案例教程第二章练习
一.打印金字塔: 这是各种语言学习之处都要做的一道题,最近在重新学习js,看到了这个题,做一下记录. 1 <script type="text/javascript"> ...
- mysql学习2
1.视图 视图是一个虚拟表(非真实存在),其本质是[根据sql语句获取动态的数据集,并为其命名],用户使用时只需要使用[名称]即可获取结果集,并可以将其当作表来使用. 搜索临时表 SELECT * F ...
- Java课程之团队开发(NABCD需求分析)
N.需求 1.学生基本的录入课程功能 2.学生对于空教室使用的需求(自习或者是活动占用) 3.学生对于具体课程的查询需求 A.做法 1.制作出基于安卓的课程查询,录入以及教室查询应用软件 B.好处 1 ...
- Java课堂笔记(零):内容索引
回想自己学习和使用Java的时间也是很长了.本科期间课堂上浅尝辄止地学习了点皮毛,后来也是搁置不用,未曾深入研究.研究生期间因为项目和实习的原因,基本算是重新拾起Java这门语言,并且接触到了Spri ...
- iOS浏览器 new Date() 返回 NaN
问题 项目中某个地方用到了倒计时,因此打算通过 new Date() 函数实现.但在 iPhone 真机测试的时候,显示的结果不符合预期.通过调试发现 iOS 中 new Date('2017-01- ...