python操作redis的方法
本文实例讲述了python操作redis的方法。分享给大家供大家参考。具体如下:
#!/usr/bin/python
#coding=utf-8
importredis
classCRedis:
def__init__(self):
self.host='localhost'
self.port=6379
self.db=0
self.r=redis.Redis(host=self.host,port=self.port,db=self.db)
#1.strings类型及操作
#设置key对应的值为string类型的value
defset(self,key,value):
returnself.r.set(key,value)
#设置key对应的值为string类型的value。如果key已经存在,返回0,nx是notexist的意思
defsetnx(self,key,value):
returnself.r.setnx(key,value)
#设置key对应的值为string类型的value,并指定此键值对应的有效期
defsetex(self,key,time,value):
returnself.r.setex(key,time,value)
#设置指定key的value值的子字符串
#setrangename8gmail.com
#其中的8是指从下标为8(包含8)的字符开始替换
defsetrange(self,key,num,value):
returnself.r.setrange(key,num,value)
#获取指定key的value值的子字符串
defgetrange(self,key,start,end):
returnself.r.getrange(key,start,end)
#mget(list)
defget(self,key):
ifisinstance(key,list):
returnself.r.mget(key)
else:
returnself.r.get(key)
#删除
defremove(self,key):
returnself.r.delete(key)
#自增
defincr(self,key,default=1):
if(1==default):
returnself.r.incr(key)
else:
returnself.r.incr(key,default)
#自减
defdecr(self,key,default=1):
if(1==default):
returnself.r.decr(key)
else:
returnself.r.decr(key,default)
#2.hashes类型及操作
#根据email获取session信息
defhget(self,email):
returnself.r.hget('session',email)
#以email作为唯一标识,增加用户session
defhset(self,email,content):
returnself.r.hset('session',email,content)
#获取session哈希表中的所有数据
defhgetall(self):
returnself.r.hgetall('session')
#删除hashes
defhdel(self,name,key=None):
if(key):
returnself.r.hdel(name,key)
returnself.r.hdel(name)
#清空当前db
defclear(self):
returnself.r.flushdb()
#3、lists类型及操作
#适合做邮件队列
#在key对应list的头部添加字符串元素
deflpush(self,key,value):
returnself.r.lpush(key,value)
#从list的尾部删除元素,并返回删除元素
deflpop(self,key):
returnself.r.plush(key)
if__name__=='__main__':
r=CRedis()
希望本文所述对大家的Python程序设计有所帮助。