| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 | import redisfrom Ansjer.config import SERVER_HOST# 本地调试把注释打开# SERVER_HOST = '127.0.0.1'class RedisObject:    def __init__(self, db=0):        self.POOL = redis.ConnectionPool(host=SERVER_HOST, port=6379, db=db)        self.CONN = redis.Redis(connection_pool=self.POOL)    def set_data(self, key, val, expire=0):        try:            self.CONN.set(key, val)            if expire > 0:                self.CONN.expire(key, expire)        except Exception as e:            return False        else:            return True    def get_data(self, key):        try:            val = self.CONN.get(key)        except Exception as e:            print(repr(e))            return False        else:            if val:                return val.decode('utf-8')            else:                return False    def del_data(self, key):        try:            val = self.CONN.delete(key)        except Exception as e:            print(repr(e))            return False        else:            return True    def get_size(self):        return self.CONN.dbsize()    # 向列表插入数据    def rpush(self, name, val):        self.CONN.rpush(name, val)    def lpop(self, name):        val = self.CONN.lpop(name)        if val:            return val.decode('utf-8')        else:            return False    # 获取列表长度    def llen(self, name):        return self.CONN.llen(name=name)    # 获取列表所有数据    def lrange(self, name, start, end):        return self.CONN.lrange(name, start, end)    # 删除列表指定数据    def lrem(self, name, num, value):        """        num:列表方向,删除个数(0:所有)        value:删除的值        """        return self.CONN.lrem(name, num, value)    def get_ttl(self, key):        ttl = self.CONN.ttl(key)        if ttl:            return ttl        else:            return 0    def get_keys(self, key):        keys = self.CONN.keys(key)        if keys:            return keys        else:            return False    def set_ex_data(self, key, val, expire=0):        try:            self.CONN.setex(name=key, time=expire, value=val)        except Exception as e:            return False        else:            return True
 |