redis数据库及与python交互用法简单示例

yipeiwu_com7年前Python基础

本文实例讲述了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<0表示从尾到头删除的次数)

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相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

利用matplotlib实现根据实时数据动态更新图形

利用matplotlib实现根据实时数据动态更新图形

我就废话不多说了,直接上代码吧! from time import sleep from threading importThread import numpy as np impo...

python 实现将list转成字符串,中间用空格隔开

今天想输出一个list,中间用空格隔开。当然用循环可以搞定,但是这个也太不象python的风格了。 找了半天,网上都说使用" ".join(a)的办法,但是python3不支持,在sta...

基于Django模板中的数字自增(详解)

基于Django模板中的数字自增(详解)

Django框架的模板提供了{% for %} 标签来进行循环 例如对集合进行循环是比较简单的 {% for row in v1 %} <div>{{row.name}}...

Python中字符串的修改及传参详解

Python中字符串的修改及传参详解

发现问题 最近在面试的时候遇到一个题目,选择用JavaScript或者Python实现字符串反转,我选择了Python,然后写出了代码(错误的): #!/usr/bin/env py...

Python实现字典依据value排序

具体内容如下: 使用sorted将字典按照其value大小排序 >>> record = {'a':89, 'b':86, 'c':99, 'd':100} &g...