Administrator
发布于 2024-06-28 / 87 阅读
0

Python Redis相关

Python Redis 的使用

同步版

初始化

redis~=4.3.4
import redis
pool = redis.ConnectionPool(host=,port=,db=)

def get_redis_session():
    redis_session = redis.Redis(connection_pool=pool)
    return redis_session

string

redis_session.set(key,value) # 插入
redis_session.get(key) # 取出
redis_session.setex(key,expire,value) # 同时设置过期时间
redis_session.delete(key) # 删除

list

redis_session.lpush(key,*json_list) # 从左插入
redis_session.rpush(key,*json_list) # 从右插入
redis_session.llen(key) # 返回列表长度
redis_session.lrange(key,start,end) # 从左取出
redis_session.ltrim(key,start,end) # 切割
redis_session.expire(key,seconds) # 设置过期时间

hashset

redis_session.hset(map_key,key,value) # 插入
redis_session.hget(map_key,key) # 单个取出
redis_session.hgetall(map_key) # 取出所有

异步

在fastapi中使用

aioredis~=2.0.1
import aioredis

@app.on_event('startup')
async def startup()
    app.state.redis = await aioredis.from_url(f'redis://{host}:{port}')


# 接口中使用时
async def get_data(req:Request):
    redis_session = await req.app.state.redis.client()
    
其他使用基本一致
只需要在前面加上 await就行