摘要: 封装简介 隐藏数据 property装饰器 class People: def __init__(self,name,weight,height): self.name=name self.weight=weight self.height=height # @property def bmi(se 阅读全文
posted @ 2019-07-26 20:04 pdun 阅读(767) 评论(0) 推荐(0) 编辑
摘要: 官方描述:不同对象可以响应(调用)同一个方法,产生不同的结果 (对猫,狗,发出吃的命令时,猫去吃鱼,狗去吃骨头) 好处:提高程序的扩展性 具体的:父类建立一套规范,无需实现内部的方法,子类按照这套规范实现各自的功能 鸭子类型 python不推荐强制限制语法,推荐鸭子类型,(不使用abc强制要求必须有 阅读全文
posted @ 2019-07-26 19:52 pdun 阅读(604) 评论(0) 推荐(0) 编辑
摘要: 一、继承简介 #继承与抽象(先抽象再继承) 抽象:抽取类似或比较像的部分, 它的作用是划分类别,抽象只是分析过程中的一种技巧,通过抽象可以得到类 继承:是基于抽象的结果, 派生:子类拥有与父类不同的内容 覆盖:子类与父类拥有完全相同的名称 二、方法的重写 class Animal: def __in 阅读全文
posted @ 2019-07-26 19:46 pdun 阅读(740) 评论(0) 推荐(0) 编辑
摘要: 自定义,也是源码的基本逻辑 ''' {'ip1':[时间1 ,时间2], 'ip2':[时间1, ], } #(1)取出访问者ip # (2)判断当前ip不在访问字典里,添加进去,并且直接返回True,表示第一次访问,在字典里,继续往下走 # (3)循环判断当前ip的列表,有值,并且当前时间减去列表 阅读全文
posted @ 2019-07-26 12:35 pdun 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 源码与认证组件很类似,这里只给出关键点 def check_permissions(self, request): for permission in self.get_permissions(): if not permission.has_permission(request, self): s 阅读全文
posted @ 2019-07-26 10:15 pdun 阅读(173) 评论(0) 推荐(0) 编辑