Posted in Python onNovember 01, 2019
本文实例讲述了redis数据库及与python交互用法。分享给大家供大家参考,具体如下:
redis数据操作
1.string类型:主要存储字符串
操作 | 命令 |
---|---|
设置键值 | set key value |
设置键值与过期时间 | setex key seconds(单位为秒) value |
设置多个键 | met key1 value1 key2 value2 … |
追加值 | append key value |
获取值 | get key |
获取多个 | 键的值 mget key1 key2 … |
2.hash类型:主要用于存储对象,对象的结构为属性和值
操作 | 命令 |
---|---|
设置单个属性 | hset key field value (例:hset user name xiaoming) |
设置多个属性 | hmset key fiel1 value1 field2 value2… |
获取指定键所有属性 | hkeys key |
获取一个属性的值 | hget key field |
获取多个属性的值 | hmget key field1 field2… |
获取所有属性的值 | hvals key |
删除属性 | hdel key field1 field2… |
3.list类型:存储列表
操作 | 命令 |
---|---|
在左侧插入数据 | lpush key value1 value2… |
在右侧插入数据 | rpush key value1 value2… |
在指定元素前插入 | linsert key before 元素 插入元素 |
在指定元素后插入 | linsert key after 元素 插入元素 |
获取指定范围值 | lrange key start stop(支持负索引) |
设置指定索引位置的值(修改) | lset key index value |
删除指定元素 | lrem key count value (count>0表示从头到尾删除的次数,count=0删除所有,count |
4.set类型:存储无序集合
操作 | 命令 |
---|---|
添加元素 | sadd key member1 member2… |
获取所有元素 | smembers key |
删除指定元素 | srem key |
5.zset类型:有序集合,每个元素关联一个double类型的score,表示权重,按权重排序
操作 | 命令 |
---|---|
添加元素 | zadd key score1 member1 score2 memeber2… |
返回指定范围元素 | zrange key start stop |
返回指定范围权重的元素 | zrangebyscore key min max |
返回指定成员的权重 | zscore key member |
删除指定元素 | zrem key member1 member2… |
删除指定权重范围元素 | zrembyscore key min max |
6.键命令:
操作 | 命令 |
---|---|
查找键(参数支持正则) | keys pattern(keys *查看所有键,keys a*查找a开头的键) |
判断键是否存在 | exists key(存在返回1,不存在返回0) |
查看键的类型 | type key |
删除键及对应的值 | del key1 key2… |
设置键的过期时间 | expire key seconds |
查看键的有效时间 | ttl key |
与python交互使用
1.StricRedis类:
通过init创建对象,指定参数host、port与指定的服务器和端⼝连接,host默认为localhost,port默认为6379,db默认为0
例:
sr = StrictRedis(host='localhost', port=6379, db=0)
简写
sr=StrictRedis()
2.对象操作:
例:
增加(修改):
#创建StrictRedis对象,与redis服务器建立连接 sr=StrictRedis() #添加键name,值为itheima result=sr.set('name','itheima')
获取:
result = sr.get('name')
删除:
result = sr.delete('name')
操作方法基本与redis数据库操作一样
希望本文所述对大家Python程序设计有所帮助。
redis数据库及与python交互用法简单示例
- Author -
HMMHMH声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@