Halo
发布于 2022-05-06 / 92 阅读 / 0 评论 / 0 点赞

python操作redis

线程安全

  • redis-py是线程安全的Redis客户端,可以放心的在多线程代码中使用
pip install redis
  • 在python3.x中,所有的字符串响应返回bytes类型的数据;在python2.x中,所有的字符串响应返回str类型的数据

连接池

# 连接池
# 把他做成单例,写在一个文件里面,import它
import redis

# 拿到一个redis的连接池
Pool = redis.ConnectionPool(host='127.0.0.1', port=6379, max_connections=10)

# 从池子中拿一个链接
conn = redis.Redis(connection_pool=pool,decode_responses=True)
print(conn.get('name').decode('utf-8'))

操作

  1. 设置和超时
import redis

pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
r = redis.Redis(connection_pool=pool)
r.set('food', 'mutton', ex=3)    # key是"food" value是"mutton" 将键值对存入redis缓存
print(r.get('food'))  # mutton 取出键food对应的值
  1. 不存在才设置
import redis

pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
r = redis.Redis(connection_pool=pool)
print(r.set('fruit', 'watermelon', nx=True))    # True--不存在
# 如果键fruit不存在,那么输出是True;如果键fruit已经存在,输出是None

评论