Python redis

Python redis 使用介绍 | 菜鸟教程

准备

Python redis_第1张图片

Python redis_第2张图片

取出方式   

Python redis_第3张图片

String命令

Python redis_第4张图片

nx、xx 

Python redis_第5张图片

setnx(name,value)

Python redis_第6张图片

setex(name, time, value)、psetex(name, time, value)

Python redis_第7张图片

get(name)

 mset

r.mset({"k1": "v1", "k2": "v2"})

mget

Python redis_第8张图片

getset(name, value) 设置新值并获取原来的值

Python redis_第9张图片

getrange(key, start, end) 获取子序列(根据字节获取,非字符)包括end

取索引号是0-2 前3位的字节 君 切片操作 (一个汉字3个字节 1个字母一个字节)

Python redis_第10张图片

setrange(name, offset, value) 修改字符串内容

Python redis_第11张图片

strlen(name) 返回name对应值的字节长度

(一个汉字3个字节)

incr(self, name, amount=1) 自增,默认 amount=1

自增 name 对应的值,当 name 不存在时,则创建 name=amount,否则,则自增

注:同 incrby

Python redis_第12张图片

incrbyfloat(self, name, amount=1.0),默认amount=1.0

自增 name对应的值,当name不存在时,则创建name=amount,否则,则自增。

Python redis_第13张图片

decr(self, name, amount=1) 自减,默认amount=1

自减 name 对应的值,当 name 不存在时,则创建 name=amount,否则,则自减

Python redis_第14张图片

append(key, value) 在redis name对应的值后面追加内容

Python redis_第15张图片

redis 基本命令 hash

hset(name, key, value) 单个增加--修改(单个取出)

--没有就新增,有的话就修改

Python redis_第16张图片

Python redis_第17张图片

 hset(name,mapping=content)  批量增加  mapping- 字典

Python redis_第18张图片

hmset已过时

hmget(name, keys, *args) 批量取出

Python redis_第19张图片

hgetall(name) 取出所有的键值对

Python redis_第20张图片

hkeys(name) 得到所有的keys(类似字典的取所有keys)

Python redis_第21张图片

hgetall和hkeys对比 

hmget 字符串 / 数组形式 对比

 hlen(name) 得到所有键值对的格式 hash长度 

Python redis_第22张图片

hvals(name) 得到所有的value(类似字典的取所有value)

Python redis_第23张图片

hexists(name, key) 判断成员是否存在(类似字典的in)

Python redis_第24张图片

hdel(name,*keys) 删除 单个/多个 键值对 

Python redis_第25张图片

hincrby(name, key, amount=1) 自增自减整数

(将key对应的value--整数 自增1或者2,或者别的整数 负数就是自减)

Python redis_第26张图片

hincrbyfloat(name, key, amount=1.0) 自增自减浮点数

(将key对应的value--浮点数 自增1.0或者2.0,或者别的浮点数 负数就是自减)

Python redis_第27张图片

取值查看--分片读取

hscan(name, cursor=0, match=None, count=None)

Python redis_第28张图片

hscan_iter(name, match=None, count=None) 分批获取数据

Python redis_第29张图片

redis基本命令 list

lpush(name,values) 在name对应的list中添加元素,每个新的元素都添加到列表的最左边

Python redis_第30张图片

rpush 增加(从右边增加)--没有就新建

Python redis_第31张图片

lpushx(name,value) 往已经有的name的列表的左边添加元素,没有的话无法创建

在name对应的list中添加元素,只有name已经存在时,值添加到列表的最左边

Python redis_第32张图片

rpushx 往已经有的name的列表的右边添加元素,没有的话无法创建

Python redis_第33张图片

linsert(name, where, refvalue, value))  新增(固定索引号位置插入元素)

Python redis_第34张图片

r.lset(name, index, value)  修改(指定索引号进行修改)

Python redis_第35张图片

r.lrem(name, num, value)   删除(指定值进行删除)

Python redis_第36张图片

lpop(name) 删除最左边元素并返回

rpop(name) 删除最右边元素

Python redis_第37张图片

ltrim(name, start, end)  删除索引之外的值

Python redis_第38张图片

lindex(name, index) 取值(根据索引号取值)

Python redis_第39张图片

rpoplpush(src, dst)  移动 元素从一个列表移动到另外一个列表

从一个列表取出最右边的元素,同时将其添加至另一个列表的最左边

Python redis_第40张图片

brpoplpush(src, dst, timeout=0)  移动 元素从一个列表移动到另外一个列表 可以设置超时

从一个列表的右侧移除一个元素并将其添加到另一个列表的左侧

Python redis_第41张图片

blpop(keys, timeout) 一次移除多个列表

Python redis_第42张图片

自定义增量迭代

Python redis_第43张图片

redis基本命令 set

sadd(name,values)  新增

Python redis_第44张图片

scard(name) 获取元素个数 类似于len

Python redis_第45张图片

smembers(name) 获取集合中所有的成员

Python redis_第46张图片

sscan(name, cursor=0, match=None, count=None) 获取集合中所有的成员--元组形式

Python redis_第47张图片

Python redis_第48张图片

sdiff(keys, *args) 差集

Python redis_第49张图片

sdiffstore(dest, keys, *args) 差集--差集存在一个新的集合中

Python redis_第50张图片

sinter(keys, *args) 交集

Python redis_第51张图片

sinterstore(dest, keys, *args)  交集--交集存在一个新的集合中

Python redis_第52张图片

sunion(keys, *args) 并集

Python redis_第53张图片

sunionstore(dest,keys, *args)  并集存在一个新的集合

Python redis_第54张图片

sismember(name, value)  判断是否是集合的成员 类似in

Python redis_第55张图片

smove(src, dst, value) 将某个成员从一个集合中移动到另外一个集合

Python redis_第56张图片

spop(name) 删除--随机删除并且返回被删除值

Python redis_第57张图片

srem(name, values) 删除--指定值删除

Python redis_第58张图片

redis基本命令 有序set

zadd  新增  字典 值为int类型

Python redis_第59张图片

zcard(name) 获取有序集合元素个数 类似于len

Python redis_第60张图片

r.zrange( name, start, end, desc=False, withscores=False, score_cast_func=float) 获取有序集合的所有元素

Python redis_第61张图片

zrevrange(name, start, end, withscores=False, score_cast_func=float) 从大到小排序

(同zrange,集合是从大到小排序的)

Python redis_第62张图片

zrangebyscore(name, min, max, start=None, num=None, withscores=False, score_cast_func=float) 按照分数范围获取name对应的有序集合的元素

Python redis_第63张图片

zrevrangebyscore(name, max, min, start=None, num=None, withscores=False, score_cast_func=float)按照分数范围获取有序集合的元素并排序(默认从大到小排序)

Python redis_第64张图片

zscan(name, cursor=0, match=None, count=None, score_cast_func=float) 获取所有元素--默认按照分数顺序排序

Python redis_第65张图片

zscan_iter(name, match=None, count=None,score_cast_func=float) 获取所有元素--迭代器

Python redis_第66张图片

zcount(name, min, max) 获取name对应的有序集合中分数 在 [min,max] 之间的个数

Python redis_第67张图片

zincrby(name, amount, value) 自增

Python redis_第68张图片

zrank(name, value) 获取值的索引号

Python redis_第69张图片

zrem(name, values) 删除--指定值删除

Python redis_第70张图片

zremrangebyrank(name, min, max) 删除--根据排行范围删除,按照索引号来删除

Python redis_第71张图片

zscore(name, value) 获取值对应的分数

Python redis_第72张图片

其他常用操作

delete(*names) 删除

exists(name) 检查名字是否存在

Python redis_第73张图片

keys(pattern='')  模糊匹配

Python redis_第74张图片

expire(name ,time) 设置超时时间

Python redis_第75张图片

rename(src, dst) 重命名

Python redis_第76张图片

randomkey() 随机获取name

Python redis_第77张图片

 type(name) 获取类型

Python redis_第78张图片

查看所有元素 --汇总

Python redis_第79张图片

查看所有元素--迭代器  --汇总

Python redis_第80张图片

其它方法

Python redis_第81张图片

管道

Python redis_第82张图片

你可能感兴趣的:(redis,数据库,缓存)