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( ...
随机推荐
- shell编程基础语法
创建文件:touch aaa.sh 把文件变成可执行的命令: chmod +x /Users/dream-mac/Desktop/aaa.sh (这里是文件路径,如果在当前路径下,只需要把文件名写到这 ...
- 什么是nrm
什么是nrm nrm 是一个 npm 源管理器,允许你快速地在 npm 源间切换. 安装nrm 在命令行执行命令,npm install -g nrm,全局安装nrm. 使用 执行命令nrm ls查看 ...
- Django缓存机制
缓存介绍 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增删改查,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的后台操作,都会消耗很多的服务 ...
- [CF1140C]Playlist
Description: 给你n首歌,每首歌有一个长度\(a_i\)和美丽度\(b_i\) 现在可以选出最多k首,动听值为\(\sum a_i*min_{\sum b_i}\) Hint: \(n \ ...
- 微信跳转之WAP跳转微信公众号关注页面链接weixin://dl/business/?ticket=
本文整理了部分微信 URL Schemes,经过本人测试,所有url在微信 6.3.22 版本下都可正常工作.大家可以在 Safari 中打开链接进行尝试.(部分链接仅允许在微信内部浏览器中打开,已用 ...
- Vue(三十一)轮播组件
直接上源码 (1)组件文件 Carousel.vue <template> <div class="carousel-component"> <div ...
- 基于vue-cli配置移动端自适应
移动端自适应:手淘的 lib-flexible + rem 配置 flexible 安装 lib-flexible 在命令行中运行如下安装: 1 npm i lib-flexible --save 引 ...
- [LeetCode] Masking Personal Information 给个人信息打码
We are given a personal information string S, which may represent either an email address or a phone ...
- selenium webdriver定位不到元素的五种原因及解决办法
1.动态id定位不到元素 for example: //WebElement xiexin_element = driver.findElement(By.id("_mail_ ...
- Canvas中绘制贝塞尔曲线
① 什么是贝塞尔曲线? 在数学的数值分析领域中,贝济埃曲线(英语:Bézier curve,亦作“贝塞尔”)是计算机图形学中相当重要的参数曲线.更高维度的广泛化贝济埃曲线就称作贝济埃曲面,其中贝济埃三 ...