Redis之与python交互
程序员文章站
2023-11-15 18:37:16
Redis之与python交互,内容包括 Python操作redis方法,python操作String,redis存储session信息。其中,Python操作redis方法 包括 StrictRedis对象⽅法;python操作String 内容包括 string-增加,string-获取,str... ......
安装redis
pip install redis
调⽤模块
引⼊模块
from redis import *
这个模块中提供了strictredis对象(strict严格),⽤于连接redis服务器,并按照不同类型提供 了不同⽅法,进⾏交互操作
方法
strictredis对象⽅法
通过init创建对象,指定参数host、port与指定的服务器和端⼝连接,host默认为localhost,port默认为6379,db默认为0
sr = strictredis(host='localhost', port=6379, db=0) 简写 sr=strictredis()
根据不同的类型,拥有不同的实例⽅法可以调⽤,与前⾯学的redis命令对应,⽅法需要的参数与命令的参数⼀致
string
- set
- setex
- mset
- append
- get
- mget
- key
keys
- exists
- type
- delete
- expire
- getrange
- ttl
hash
- hset
- hmset
- hkeys
- hget
- hmget
- hvals
- hdel
list
- lpush
- rpush
- linsert
- lrange
- lset
- lrem
set
- sadd
- smembers
- srem
zset
- zadd
- zrange
- zrangebyscore
- zscore
- zrem
- zremrangebyscore
python操作string
准备
- 在桌面上创建redis目录
- 使用pycharm打开 redis目录
- 创建redis_string.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)
操作string完整示例
from redis import strictredis if __name__ == '__main__': # 创建一个strictredis对象,连接redis数据库 try: sr = strictredis() # 添加一个key,为name,value为yifchan # res = sr.set('name', 'yifchan') # print(res) # true # 修改name的值为yifchen # res = sr.set('name', 'yifchen') # print(res) # true # 获取name的值 # res = sr.get('name') # print(res) # b'yifchan' b'yifchen' # # 获取数据库中所有的键 # res = sr.keys() # print(res) # [b'name'] # # 删除name及所对应的值 # res = sr.delete('name') # print(res) # [b'name'] # res = sr.keys() # print(res) # [] # 假设已经在redis中设置了多个键 # 127.0.0.1: 6379 > mset a1 ha a2 xi res = sr.keys() print(res) # [b'a1', b'a2'] # 删除多个键值 res = sr.delete('a1', 'a2') print(res) # 2 res = sr.keys() print(res) # [] except exception as e: print(e)
redis存储session信息
安装包
pip install django-redis-sessions
django使用redis存储sesson实例
settings.py
# 设置redis存储sessions信息 session_engine = 'redis_sessions.session' session_redis_host = 'localhost' session_redis_port = 6379 session_redis_db = 2 session_redis_password = '' session_redis_prefix = 'session' # session:唯一标识码
views.py
from django.shortcuts import render, httpresponse # create your views here. def set_session(request): """设置session信息""" request.session['username'] = 'yifchan' request.session['age'] = 18 return httpresponse('设置session') def get_session(request): """获取session信息""" username = request.session['username'] age = request.session['age'] return httpresponse(username + ':' + str(age))
url
urlpatterns = [ url(r'^set_session/', views.set_session), url(r'^get_session/', views.get_session), ]
上一篇: 企业需要具备的四大网站推广技巧
下一篇: 塞恩出装玩法套路详解(LOL小技巧)