Python进阶(8) Redis

0. 前言


1. 创建/释放连接

1.1. 创建

  • 主要就是创建 redis.Redis 对象,相关文档可以参考这里
  • 创建单个连接:r = redis.Redis(host='localhost', port=6379, db=0, password='password')
  • 使用线程池创建连接
    • 相关文档可以参考这里
    • 线程池实例可以参考下面。
pool = redis.ConnectionPool(host=IP, port=PORT, password=PASSWORD)
r = redis.Redis(connection_pool=pool)

1.2. 释放


2. 基本使用

  • 基本使用其实完全与 Redis 官方API相同,直接调用 redis.Redis 即可。
  • Redis 命令大全

2.1. 基本类型操作

  • 比较好的中文Redis常用命令汇总博客
  • string
    • set(name, value)
    • get(name)
    • mset(mapping):批量赋值
  • list
    • llen(name):列表长度
    • lpush(name, value1[, value2, ...])
    • rpush(name, value1[, value2, ...])
    • linsert(name, where, refvalue, value):在左边第一个出现的refvalue元素的前/后(通过where确定,取值为before/after)插入元素value。
    • lpop(name):删除并返回
    • rpop(name):删除并返回
    • lindex(name, index):index从0开始
    • lrange(name, start, stop):获取[start, stop]元素,下标从0开始,可以为负数
  • hash
    • hset(name, key, value)
    • hget(name, key)
    • hmset(name, mapping):批量增加
    • hgetall(name):获取所有key-value
    • hlen(name):获取hash长度
    • hkeys(name):获取所有keys
    • hexists(name, key):判断是否存在
    • hdel()
    • hdel(name, *key):删除key

2.2. 其他操作

  • 判断name是否存在:exists(name)
  • 删除name:delete(name)
  • 判断name类别:type(name)
  • 判断当前数据库中键的个数:dbsize()

2.3. 注意事项

  • 注意,各种Redis API获取的不是字符串,而是bytes,如果需要字符串需要执行decode()

3. 实例

pool = redis.ConnectionPool(host=IP, port=PORT, password=PASSWORD)

def _get_redis():
    return redis.Redis(connection_pool=pool)

def del_key(field, ops):
    key = _get_key(field, ops)
    try:
        r = _get_redis()
        return r.delete(key)
    finally:
        r.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值