Skip to main content

Installation

install as pip

pip install nest-redis==1.1.1

Usage

1. 实例化

  • redis配置

    config = {
        "host": "127.0.0.1",
        "port": 6379,
        "password": "123456",
        "db": 10,
        "decode_responses": True
    }
    
  • 获取句柄

    >>> from pyredis.cache import RedisUtil
    >>> cache = RedisUtil(config)
    

2.字符串相关方法

  • set

    :explain: 设置值

    :syntax: cache.set(key: str, val: object, [time: int,]) -> bool

    :param: key, 字符串的key

    :param: val, 字符串的值,可以为string, list, dict

    :param: time,超时时间,单位秒

    :return: string

    >>> cache.set("key", "val")
    >>> True
    >>> cache.set("key", "val", 3000)
    >>> True
    
  • get

    :explain: 获取值

    :syntax: cache.get(key: str) -> object

    :param: key,字符串的键

    :return: 字符串的值

    >>> cache.get("key")
    >>> "val"
    
  • ttl

    :explain: 获取该键剩余的时间

    :syntax: cache.ttl(key: str) -> int

    :param: key, 字符串的键

    :return: 剩余的时间,单位秒

    >>> cache.ttl("key")
    >>> 2990
    
  • persist

    :explain: 取消过期时间

    :syntax: cache.persist(key: str) -> bool

    :param: key,字符串的键

    :return: True设置成功,Flase设置失败

    >>> cache.persist(key)
    >>> True
    
  • expire

    :explain: 添加过期时间

    :syntax: cache.expire(key: str, time: int) -> bool

    :param: key, 字符串的键

    :param: time,过期的时间,单位秒

    :return: True设置成功,Flase设置失败

    >>> cache.expire(key, 2000)
    >>> True
    

3. 队列相关方法

  • lpush

    :explain: 添加队首的值

    :syntax: cache.lpush(name: str, val: object) -> int

    :param: name,队列的键

    :param: val,队列的值

    :return: 返回队尾的值的索引

    >>> cache.lpush("colors", "red")
    >>> 1
    >>> cache.lpush("colors", ["yellow", "pink"])
    >>> 3
    
  • rpop

    :explain: 获取队尾的值

    :syntax: cache.rpop(name: str) -> object

    :param: name,队列的键

    :return: 返回队尾的值

    >>> cache.rpop("colors")
    >>> "red"
    
  • llen

    :explain: 获取队列的长度

    :syntax: cache.llen(name: str) -> int

    :param: name, 队列的key

    :return: 队列的长度

    >>> cache.llen("colors")
    >>> 2
    

4. 哈希相关方法

  • hset

    :explain: 添加哈希数据

    :syntax: cache.hset(name: str, field: str, val: str) -> int

    :param: name,hash的键

    :param: field, hash的字段

    :param: val, hash的值

    :return: 0: 添加失败 1: 添加成功

    >>> cache.hset("shop", "3c", "dell computer")
    >>> 1
    >>> cache.hset("shop", "drink", "milk")
    >>> 1
    >>> cache.hset("shop", "food", "egg")
    >>> 1
    >>> cache.hset("shop", "cigarette", {"liqun":17, "huangjinye": 12})
    >>> 1
    
  • hmset

    :explain: 批量添加数据

    :syntax: cache.hmset(name :str, mapping: dict) -> bool

    :param: name,hash的名称

    :param: mapping,hash的数据,为字典类型

    :return: False: 添加失败 ; True: 添加成功

    >>> cache.hmset("company", {"mib": "{\"user_id\": 1207, \"user_name\":\"xxx\"}", "mic":"unknown"})
    >>> True
    
  • hgetall

    :explain: 获取hash中某个键下的键值对

    :syntax: cache.hgetall(name: str)-> dict

    :param: name,hash的名称

    :return: 哈希中name中的所有数据

    >>> cache.hgetall("shop")
    >>> {'3c': 'dell computer', 'food': 'egg', 'drink': 'milk'}
    
  • hget

    :explain: 获取哈希某字段下的数据

    :syntax: cache.hget(name: str, field: str) -> object

    :param: name,hash的名称

    :param: field,hash的字段名称

    :return: 哈希某字段下的数据(string, int, dict, list)

    >>> cache.hget("shop", "3c")
    >>> 'dell computer'
    
  • hlen

    :explain: 获取hash的长度

    :syntax: cache.hlen(name: str) -> int

    :param: name,hash的名称

    :return: hash的长度

    >>> cache.hlen("shop")
    >>> 3
    
  • hexists

    :explain: 判断一个field是否在hash中

    :syntax: cache.hexists(name: str, field: str) -> bool

    :param: name, hash的名称

    :param: field, hash的字段名称

    :return: True: 存在 False:不存在

    >>> cache.hexists("shop", "3c")
    >>> True
    
  • hdel

    :explain: 删除hash中的字段信息

    :syntax: cache.hdel(name: str, field: str) -> int

    :param: name,hash的名称

    :param: field,hash的字段名称

    :return: 1:删除成功 0:删除失败

    >>> cache.hdel("shop", "3c")
    >>> 1
    

5. 集合相关方法

  • sadd

    :explain: 添加集合数据

    :syntax: cache.sadd(name: str, val: object) -> int

    :param: name, 集合的键

    :param: val, 集合的值,可以为int or string

    :return: 1:成功 ; 0:失败

    >>> cache.sadd("names", "3c")
    >>> 1
    
  • smembers

    :explain: 获取集合中的数据

    :syntax: cache.smembers(name: str) -> set

    :param: name,集合的名称

    :return: 集合中的数据

    >>> cache.smembers("names")
    >>> {'3c'}
    
  • scard

    :explain: 获取集合的长度

    :syntax: cache.scard(name: str) -> int

    :param: name,集合的名称

    :return: 集合的长度

    >>> cache.scard("names")
    >>> 1
    
  • sismember

    :explain: 判断一个元素是否在集合中

    :syntax: cache.sismember(name: str, val: object) -> bool

    :param: name,集合的名称

    :param: val,需要查询的值

    :return: True在集合中,False不在集合中

    >>> cache.sismember("A", "v1")
    >>> True
    
  • sdiff

    :explain: 集合差集,属于A但不属于B

    :syntax: cache.sdiff(A: str, B: str) -> set

    :param: A, 集合A的键

    :param: B, 集合B的键

    :return: 集合差集

    >>> cache.sadd("A", ["v1", "v2", "v3"])
    >>> cache.sadd("B", "v2", "v4")
    >>> cache.sdiff("A", "B")
    >>> {"v1", "v3"}
    
  • sinter

    :explain: 集合交集,属于A且属于B

    :syntax: cache.sinter(A: str, B: str) -> set

    :param: A, 集合A的键

    :param: B, 集合B的键

    :return: 集合交集

    >>> cache.sadd("A", "v1", "v2", "v3")
    >>> cache.sadd("B", "v2", "v4")
    >>> cache.sinter("A", "B")
    >>> {"v2"}
    
  • sunion

    :explain: 集合并集,属于A或属于B的元素为称为A与B的并集

    :syntax: cache.sunion(A: str, B: str) -> set

    :param: A, 集合A的键

    :param: B,集合B的键

    :return: 集合并集

    >>> cache.sadd("A", "v1", "v2", "v3")
    >>> cache.sadd("B", "v2", "v4")
    >>> cache.sunion("A", "B")
    >>> {'v1', 'v2', 'v3', 'v4'}
    
  • srem

    :explain: 删除集合中的元素

    :syntax: cache.srem(name: str, *val: object) -> int

    :param: name,集合名称

    :param: val ,集合中的元素

    :return: 删除的个数

    >>> cache.srem("A", "a" 2)
    >>> 2
    

6. 有序集合相关方法

  • zadd

    :explain: 添加有序集合

    :syntax: cache.zadd(key: str, mapping: dict) -> list

    :param: key,有序集合的名称

    :param: mapping,要添加的值

    :return: 返回添加的个数

    >>> cache.zadd("A", {"a": 1, "b": 3, "c": 2})
    >>> 3
    
  • zrange

    :explain: 查询有序集合

    :syntax: cache.zrange(key: str, start: int, end: int) -> list

    :param: key,有序集合的名称

    :param: start,开始查询的索引

    :param: end,结束查询的索引

    :return: 获取查询后的元素的列表

    >>> cache.zrange("A", 0 , -1)
    >>> ['a', 'c', 'b']
    
  • zrank

    :explain: 查询有序集合的值的索引

    :syntax: cache.zrank(key: str, val: str) -> int

    :param: key,有序集合的名称

    :param: val, 需要查询的值

    :return: 返回查询该值的索引,索引为 -1 则表示不存在

    >>> cache.zrank("A", 'a')
    >>> 0
    
  • zcard

    :explain: 获取有序集合的长度

    :syntax: cache.zcard(key: str) -> int

    :param: key, 有序集合的名称

    :return: 有序集合的长度

    >>> cache.zcard("A")
    >>> 3
    
  • zscan_iter

    :explain: 有序集合的模糊匹配

    :syntax: cache.zscan_iter(name: str, match: str="*") -> list

    :param: name, 有序集合的名称

    :param: match, 匹配的字符串,默认为 *

    :return: 返回匹配的列表

    >>> cache.scan_iter("A" "b*")
    >>> ['b', 'bf']
    
  • zrem

    :explain: 删除有序集合中的元素

    :syntax: cache.zrem(name: str, *val: object) -> int

    :param: name,集合名称

    :param: val , 集合集合中的元素

    :return: 删除的个数

    >>> cache.zrem("A" "a", "b")
    >>> 2
    

7. 其他方法

  • delete

    :explain: 删除redis的键

    :syntax: cache.delete(key: str) -> int

    :param: key, redis的键

    :return: 1: 删除成功; 0:没有此key

    >>> cache.delete("A")
    >>> 1
    
  • flushdb

    :explain: 清除数据库下的所有键

    :syntax: cache.flushdb() -> bool

    :return: True清空成功,False清空失败

    >>> cache.flushdb()
    >>> True
    
  • keys

    :explain: 匹配数据库下的键

    :syntax: keys( pattern: str = "*") -> list

    :param: pattern表达式,默认*

    :return: list

    >>> cache.keys("sms:*")
    >>> ["sms:13512345678", "sms:13698765432"]
    
  • handler

    :explain: 获取redis句柄

    :syntax: cache.handler() -> object

    :return: object

    >>> handler = cache.handler()
    >>> handler.get("a")
    >>> "12345"
    

Release files for nest-redis 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nest-redis 1.1.1
File Size Uploaded
nest-redis-1.1.1.tar.gz 7.1 kB Details

Release files / nest-redis-1.1.1.tar.gz

Download URL nest-redis-1.1.1.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a8d12feb296fc0deb5a19cb3c13ab4fd544134b4b4490787ee93dde14e253ba4
BLAKE2b-256 checksum
How to use checksums
696d0e24399e7a7435ae4b366e847a1f2a4c617db4fb823cc6a193d452eb571c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.9

Release history Release notifications | RSS feed

This release

1.1.1 This release

1 release file

1.1.0

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page