Redis

官网:http://redis.io
中文网站:http://redis.cn
注册服务
redis-server –service-install E:\SoftWares\WorkSofts\Redis3.2\redis.windows-service.conf

配置文件

redis中的数据类型

redis的数据存储:key=value 键值对
key的数据类型:字符串
value的数据类型:
string字符串
hash哈希
list列表
set集合
zset有序集合

基本操作

cmd –>window+r –>redis-server
cmd–>window+r–>redis-cli
字符串
设置 名字 如果对已有的key name设置值 那么将会把之前的值覆盖掉

set name "yangyong"

得到名字

get name

设置name age gender的值

 mset name yy age 27 gender man

得到 name age gender的值

mget name age gender

设置10秒后yy无效

setex name 10 yy

对key为age的值加1

incr age

对key为age的值加20

incrby age 20

对key为age的值减1

 decr age

对key为age的值减20

decrby age 20

在key为name对应的值后面拼接yong

append name yong

查看name的长度

strlen name

查看所有的key

keys *

是否存在key为yy的值

exsits yy

获取key对应的值的类型

type name

key 为name 的值存在10秒

expire name 10

其实setex 和 set + expire 的效果和

查看name所剩下的有效时间 如果 时间等于-2 则表示已经失效 如果 时间等于-1则表示永不失效

ttl name

删除age键值对

del age

hash 对象
给u1添加一个id 值为1

 hset u1 id 1

给u1 的值在添加一个字段 name 且值为yy

hset u1 name yy

得到u1中的id的值

 hget u1 id

得到u1中的name id gender字段

hmget u1 name id gender

获取所有的属性和值

hgetall u1

获取所有的key值

hkeys u1

获取所包含属性的个数

hlen u1

获取所有的值

 hvals u1

是否存在name这个key

hexists u1 name

根数属性名称删除属性及值

hdel u1 name

返回值的字符串长度

hstrlen u1 gender

list列表 有序存储多个数据
从列表的头部增加多个数据
向名称为list的集合从左侧压入数据 也就是说第一个进入list列表的数据会被放到 最右侧 最后进来的数据在最左侧

lpush list abc def ghi jkl

从列表的尾部增加多个数据
向名称为list的集合从右侧压入数据 也就是说第一个进入list列表的数据会被放到 最左侧 最后进来的数据在最右侧

rpush list abc def ghi jkl

返回存在在可以列表中指定范围的数据 知道列表的末尾 不会发生越界的问题

lrang list 0 10

删除并且获取key对应的list第一个元素

lpop list

删除并获取key对应的list的最后一个元素

rpop list

set集合:无序存储多个数据
sadd key value [value] :添加多个数据到可以集合中

//存储在set中的数据是按照系统的的规则排列的  不是我们存入的顺序
sadd users swk zbj ss ts blm

smembers key :获取key集合中多有的数据

smembers users

sismember key value:判断value是否在可以集合中存在

//判断ss是否在users中
sismember users ss

scard key;获取可以集合中元素的个数

scard users

sinter key [key] 获取多个集合交集

//查看users和enemy中所有相同的项
sinter users enemy

sdiff key [key]:获取多个集合的差集

//从users的项去掉与enemy中相同的项所剩下的项
sdiff users enemy

sunion key [key]:获取多个集合的并集

//把enemy中与users不同的项添加到users中
sunion users enemy

srem key value [value]:删除key中的value

//删除users中的ts
srem users ts

zset集合:有序存储多个数据
zadd key score value [score value]:添加多个带权重的数据到key集合中

zadd z1 10 yy

zrange key start stop:获取指定范围中所有的元素

zrange z1 0 -1

zcard key:返回元素的个数

zcard z1

zcount key min max:返回score值在min和max之间的数据

zcount z1 0 5

zscore key member:返回集合中member元素的score值

zscore z1 yy

和Python的交互

在cmd窗口中输入一下命令 在python环境中安装redis模块儿

python -m pip install redis

代码中导入模块儿
import redis

import redis
# 为了节省资源,减少多次连接损耗,连接池的作用相当于总揽多个客户端与服务端的连接,当新客户端需要连接时,只需要到连接池获取一个连接即可,实际上只是一个连接共享给多个客户端。
pool = redis.ConnectionPool(host='localhost',port=6379,decode_responses=True)
r = redis.Redis(connection_pool=pool)
r2 = redis.Redis(connection_pool=pool)
r.set("apple", 'a')
r2.set("grape", 'b')
print(r.get('apple'))
print(r2.get('grape'))
# 两者的id是一样的  所以是同一个客户端在连接
print(r.client_list())
print(r2.client_list())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yy763496668

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值