创建py文件 创建连接
from redis import *
if name=="main":
try:
#创建StrictRedis对象,与redis服务器建⽴连接
sr=StrictRedis()
except Exception as e:
print(e)
string-增加
⽅法set,添加键、值,如果添加成功则返回True,如果添加失败则返回False 编写代码如下:
from redis import *
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 *
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 *
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 编写代码如下
from redis import *
if name=="main":
try:
#创建StrictRedis对象,与redis服务器建⽴连接
sr=StrictRedis()
#设置键name的值,如果键已经存在则进⾏修改,如果键不存在则进⾏添加
result = sr.delete('name')
#输出响应结果,如果删除成功则返回受影响的键数,否则则返回0
print(result)
except Exception as e:
print(e)
获取键
⽅法keys,根据正则表达式获取键 编写代码如下
from redis import *
if name=="main":
try:
#创建StrictRedis对象,与redis服务器建⽴连接
sr=StrictRedis()
#获取所有的键
result=sr.keys()
#输出响应结果,所有的键构成⼀个列表,如果没有键则返回空列表
print(result)
except Exception as e:
print(e)
管道操作(事务操作)
import redis,time
import redis.exceptions
r=redis.Redis(host='localhost',port=6379)
pipe=r.pipeline()
print(r.get('a'))
try:
# pipe.watch('a')
pipe.multi()
pipe.set('here', 'there')
pipe.set('here1', 'there1')
pipe.set('here2', 'there2')
time.sleep(5)
pipe.execute()
except redis.exceptions.WatchError as e:
发布与订阅
发布方:
import redis
r=redis.Redis(host="localhost",port=6379)
发布使用publish(self, channel, message):Publish message
on channel
.
Flag=True
while Flag:
msg=input("消息内容:")
if len(msg)==0:
continue
elif msg=='quit':
break
else:
r.publish('频道名称',msg)
订阅方
import redis
r=redis.Redis(host="localhost",port=6379)
发布使用publish(self, channel, message):Publish message
on channel
.
Flag=True
创建订阅对象
chan=r.pubsub()
订阅
msg_reciver=chan.subscribe('频道名称')
msg=chan.parse_response()#第一次会返回订阅确认信息
print(msg)
print("订阅成功,开始接收------")
while Flag:
msg=chan.parse_response()#接收消息
print(">>:",msg[2])#此处的信息格式['消息类型', '频道', '消息'],所以使用[2]来获取
网友评论