python_封装redis_list方法

Posted 含笑半步颠√

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python_封装redis_list方法相关的知识,希望对你有一定的参考价值。

xshell 进入 虚拟环境 安装 redis 

workon py3env   # 进入虚拟环境

pip install redis # 安装redis

deactivate # 退出虚拟环境

 

简单的封装下redis中的list方法:

import redis

class ListDB():

    def __init__(self, key):
        self.conn = redis.StrictRedis(decode_responses=True)
        self.key = key

    # 新增数据
    def newData(self, *value, lpush=False):
        """
        :param value: 添加的数据
        :param lpush: boolen, True表示从头部添加数据,默认从尾部添加数据
        :return: 添加后列表的长度
        """
        # if lpush == "lpush":
        #     self.conn.lpush(self.key, *list)
        # elif lpush == "rpush":
        #     self.conn.lpush(self.key, *list)

        return self.conn.lpush(self.key, *value) if lpush else self.conn.lpush(self.key, *value)

    # 返回列表中元素的值。index从0开始,当index超出索引时返回null
    def lindex(self, *list):
        return self.conn.lindex(self.key, *list)

    # 查看索引范围内元素的值
    def lrange(self, *data):
        return self.conn.lrange(self.key, *data)

    # 返回列表的长度
    def llen(self):
         return self.conn.llen(self.key)

    # 修改数据
    def lset(self, index, value):
        return self.conn.lset(self.key, index, value)

    # 删除数据
    def deletePop(self, pop=False):
        # if data == "lpop":
        #     return self.conn.lpop(self.key)
        # elif data == "rpop":
        #     return self.conn.rpop(self.key)

        return self.conn.lpop(self.key) if pop else self.conn.rpop(self.key)

li = ListDB(\'table_test\')
a = \'a\', \'b\'
# li.newData(\'test\', \'vs\')
li.newData(\'test\', \'vs\', lpush=True)
print("返回列表中元素的值。index从0开始,当index超出索引时返回null: %s" % li.lindex(0))

li.lset(0,\'hello\')

print("查看索引范围内元素的值: {}".format(li.lrange(0, -1)))
print("返回列表的长度: {}".format(li.llen()))

li.deletePop(True)
li.deletePop()

print("查看索引范围内元素的值: {}".format(li.lrange(0, -1)))

 

结果:

 

 

python_基础封装数据库方法

 

 

作者:含笑半步颠√

博客链接:https://www.cnblogs.com/lixy-88428977

声明:本文为博主学习感悟总结,水平有限,如果不当,欢迎指正。如果您认为还不错,欢迎转载。转载与引用请注明作者及出处。

以上是关于python_封装redis_list方法的主要内容,如果未能解决你的问题,请参考以下文章

Python中封装方法代码的输出混淆[重复]

python-类的封装(私有属性,私有方法)

python-类的封装(私有属性,私有方法)

Python基础-封装与扩展静态方法和类方法

javaSE_07_方法

Python基础之面向对象2(封装)