美文网首页测试开发
python_redis封装

python_redis封装

作者: 古佛青灯度流年 | 来源:发表于2017-01-16 10:50 被阅读43次

最近想要将临时数据放入redis中,所以就研究了一下

需要的第三方库:redis

  • 安装可以用pip 也可以通过pycharm

封装思路:

  • 通过应用可以知道,redis这个库已经将操作redis的各种方法封装好了,所以我们如果用的话只需要做的就是连接上所需要的库,然后应用
  • 这里用到了两个魔法方法__init__,__getattr:
  • __init__:起到的作用是连接redis库的作用
  • __getattr__:起到的作用是重载方法,通俗点就是如果我们访问一个类中不存在的方法时,那么这时候就会进入这个方法中,通过重载这个方法再给他一次执行的机会

实现代码:

redis.py

# coding=utf-8
__author__ = 'xcma'

import sys

reload(sys)
sys.setdefaultencoding('utf-8')

import redis

class Redis:

    def __init__(self, host='127.0.0.1', port=6379, db=0, password=None):
        self.__conn = redis.Redis(connection_pool=redis.BlockingConnectionPool(max_connections=15,host=host, port=port, db=db, password=password))

    def __getattr__(self, command):
        def _(*args):
            return getattr(self.__conn, command)(*args) # 重新组装方法调用
        return _

外部调用代码

test.py

from Src.Function.model.Redis.Redis import Redis

conn = Redis()

print (conn.set('test', 'yes'))

# 返回结果:True

@雪-2017-01-16 10:50:02

相关文章

  • python_redis封装

    最近想要将临时数据放入redis中,所以就研究了一下 需要的第三方库:redis 安装可以用pip 也可以通过py...

  • Python_redis/mysql 同步方案

    总的思路就是跑一个触发器服务,根据新增、更新选择不同的路径,进行同步数据操作。 新增数据新增数据 更新数据更新数据...

  • JavaScript面向对象与设计模式

    1. 面向对象 1.1 封装 封装的目的在于将信息隐藏。广义的封装不仅包括封装数据和封装实现,还包括封装类型和封装...

  • 02.OOP面向对象-3.一些理解

    对封装的理解?封装,类本身就是一个封装,封装了属性和方法。方法也是封装,对一些业务逻辑的封装。私有也是封装,将一些...

  • 封装微信小程序请求

    封装wx.request 封装api 封装请求调用

  • python 文件及文件夹的操作和异常捕获

    1、面向对象的特征:封装、继承、多态 1.1、封装: 函数一种封装,封装了一些逻辑代码 类也是一种封装,封装属性和...

  • node学习4

    Nodejs 路由模块封装、封装仿照 express 的路由 Nodejs 路由模块封装 封装仿照 express...

  • 封装组件

    封装tab组件封装曝光加载组件封装轮播组件 代码

  • MVVM在网络中应用(OkHttp+Retrofit+Gson+

    1.封装请求地址常量类 2.封装网络工具类 3.封装接口类 4.封装DTO类——即返回的数据封装模型 5.封装请求...

  • view的封装

    封装view较为简单,封装tableview比较麻烦,封装tableview的方法后面会有。 view的封装 如果...

网友评论

    本文标题:python_redis封装

    本文链接:https://www.haomeiwen.com/subject/hznubttx.html