redis

若笔记中没有记录,请参考http://doc.redisfans.com/

redis

redis 数据结构是以key-value形式,键是字符串,一条数据对应一个键 键不能重复

  • 值的类型有
  • list
  • hash(哈希)
  • 字符串string
  • set(集合)
  • zset(无序集合)
string
1.保存-添加
- set key value
  - 若库中没有该key则向数据库中添加,若有改key则更新值
- exists key
  -  查看数据库中是否有该key ,有返回1 无返回0
- keys "a"
  - 查看包含a的键
2. 删除
  • del key
  • del key1,key2…
    • 删除多键
3.查看键对应值的类型
  • type key
hash

存储的是对象,对象的数据类型 属性 值 值类型为字符串

1.增加,修改
- hset user name itcast
  - 设置user属性name的值为itcast
- hmset key field1 value2  field2 value2
  - 设置多属性
2. 查询
- hkeys key
  - 获取key 的所有属性
- hget u2 name
  - 获取 u2 name 的值
- hvals key
  - 获取所有属性的值
3. 删除
- del u2 name
  - 删除u2 name属性
list

元素为string,顺序排序

1.添加
- lpush key value
  - 从左边插入
- rpush key value
  - 从右边插入
2. 查询
- start、stop为元素的下标索引
- 索引从左侧开始,第1个元素为0
- 索引可以是负数,表示从尾部开始计数,如-1表示最后1个元素

- lrange a1 0 -1
  - 获取a1列表的所有元素
3.删除
- 将列表中前count次出现的值为value的元素移除
- count > 0: 从头往尾移除
- count < 0: 从尾往头移除
- count = 0: 移除所有

- lrem key count value
- lrem a2-2 b
  - 从a2列表右侧删除2个b
set
  • 无序集合,元素为字符串,元素具有唯一性,对集合无修改操作
1.添加
- sadd key member1,member2
  - sadd a3 zhansan lisi
    - 向a3集合中添加"zhansan","lisi"
2. 查询
- smembers key
  - 查询key中所有的元素
3.删除
- srem key member1,member2
  - srem a3 lisi
    - 删除a3集合中lisi

zset

- sorted set,有序集合
- 元素为string类型
- 元素具有唯1性,不重复
- 说明:没有修改操作
1.添加
- zadd key score1 member1 score2 member2
- zadd a4 lisi 1 wanda 2
  - 向a4 集合中添加lisi wangda 权重分别为1,2
2. 查询
- 返回指定范围内的元素
- start、stop为元素的下标索引
- 索引从左侧开始,第1个元素为0
- 索引可以是负数,表示从尾部开始计数,如-1表示最后1个元素

- zrange a4 0 -1
  - 查看a4 集合中所有的元素
- 返回score值在min和max之间的成员
  -zrangebyscore key min max
- 例3:获取键'a4'的集合中权限值在5和6之间的成员
  - zrangebyscore a4 5 6
- 获取返回成员member的score值
  - zscore key member
- 例4:获取键'a4'的集合中元素'zhangsan'的权重
  - zscore a4 zhangsan
3.删除
- zrem key menmber
- zrem a4 lisi
  - 删除a4 集合的lisi

与pyhon交互

from redis import StrictRedis
if __name__=="__main__":
    try:
        #创建StrictRedis对象,与redis服务器建⽴连接
        sr=StrictRedis()

    except Exception as e:
        print(e)
string-增加

set,添加键、值,如果添加成功则返回True,如果添加失败则返回False
编写代码如下

from redis import StrictRedis
if __name__=="__main__":
    try:
        #创建StrictRedis对象,与redis服务器建⽴连接
        sr=StrictRedis()
        #添加键name,值为itheima
        result=sr.set('name','itheima')
        #输出响应结果,如果添加成功则返回True,否则返回False
        print(result)
    except Exception as e:
        print(e)
string-获取

get,添加键对应的值,如果键存在则返回对应的值,如果键不存在则返回None
编写代码如下

from redis import StrictRedis
if __name__=="__main__":
    try:
        #创建StrictRedis对象,与redis服务器建⽴连接
        sr=StrictRedis()
        #获取键name的值
        result = sr.get('name')
        #输出键的值,如果键不存在则返回None
        print(result)
    except Exception as e:
        print(e)
string-修改

set,如果键已经存在则进⾏修改,如果键不存在则进⾏添加
编写代码如下

from redis import StrictRedis
if __name__=="__main__":
    try:
        #创建StrictRedis对象,与redis服务器建⽴连接
        sr=StrictRedis()
        #设置键name的值,如果键已经存在则进⾏修改,如果键不存在则进⾏添加
        result = sr.set('name','itcast')
        #输出响应结果,如果操作成功则返回True,否则返回False
        print(result)
    except Exception as e:
        print(e)
string-删除

delete,删除键及对应的值,如果删除成功则返回受影响的键数,否则则返 回0
编写代码如下

if __name__=="__main__":
    try:
        #创建StrictRedis对象,与redis服务器建⽴连接
        sr=StrictRedis()
        #设置键name的值,如果键已经存在则进⾏修改,如果键不存在则进⾏添加
        result = sr.delete('name')
        #输出响应结果,如果删除成功则返回受影响的键数,否则则返回0
        print(result)
    except Exception as e:
        print(e)
获取键

keys,根据正则表达式获取键
编写代码如下

if __name__=="__main__":
    try:
        #创建StrictRedis对象,与redis服务器建⽴连接
        sr=StrictRedis()
        #获取所有的键
        result=sr.keys()
        #输出响应结果,所有的键构成⼀个列表,如果没有键则返回空列表
        print(result)
    except Exception as e:
        print(e)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值