摘要: 多对多 阅读全文
posted @ 2022-06-28 11:30 Deaseyy 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 递归的特性 递归的本质就是函数调用自身,每次都会带着当前层的状态或参数下探到下一层,进行重复性的步骤,直至递归出口,携带改变后的状态结果返回到上一层。 递归代码的模板 def recursion(level, parma1, prams2,...): # 1.递归终止条件 if level > MA 阅读全文
posted @ 2020-11-14 15:34 Deaseyy 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 1.DRY 原则 它的英文描述为:Don’t Repeat Yourself。中文直译为:不要重复自己。将它应用在编程中,可以理解为:不要写重复的代码。 三种代码重复的情况:实现逻辑重复、功能语义重复、代码执行重复。 实现逻辑重复,但功能语义不重复的代码,并不违反 DRY 原则。 比如, 用户名校验 阅读全文
posted @ 2020-11-08 17:41 Deaseyy 阅读(803) 评论(0) 推荐(0) 编辑
摘要: 基于接口而非实现编程 1.要遵从“基于接口而非实现编程”的原则,具体来讲,我们需要做到下面这 3 点: 函数的命名不能暴露任何实现细节。比如,uploadToAliyun() 就不符合要求,应该改为去掉 aliyun 这样的字眼,改为更加抽象的命名方式,比如:upload()。 封装具体的实现细节。 阅读全文
posted @ 2020-11-08 12:15 Deaseyy 阅读(405) 评论(0) 推荐(0) 编辑
摘要: 程序出错该返回啥? NULL,异常,错误码,空对象? 函数运行结果分为两类:一类预期结果,也就是正常输出的结果,一类非预期结果,异常或出错情况下的输出。 (注:以下描述中使用一个id生成器的功能来举例。id由本机名,时间戳,随机数组成。) 1.返回NULL 很多人认为这是种不好的设计思路,主要理由: 阅读全文
posted @ 2020-11-08 12:13 Deaseyy 阅读(196) 评论(0) 推荐(0) 编辑
摘要: django路由分发的本质:include django进行路由分发可用以下方式: 方式一 from django.conf.urls import url,include urlpatterns = [ url(r'^web/',include('app01.urls')), ] 通过分析源码,可 阅读全文
posted @ 2020-10-18 16:39 Deaseyy 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 有时您只想将一些数据发送到不受信任的环境。但是如何安全地做到这一点?窍门涉及签名。仅提供您知道的密钥,您就可以对数据进行加密签名并将其移交给其他人。当您取回数据时,可以轻松地确保没有人篡改数据。 当然,接收者可以解码内容并查看包,但是除非拥有密钥,否则他们无法修改内容。因此,如果您将密钥保密且复杂, 阅读全文
posted @ 2020-10-17 17:14 Deaseyy 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 一,顺序表 定义:将元素顺序地存放在一块连续的存储区里,元素间的顺序关系由它们的存储顺序自然表示。 顺序表包含:表头和数据区 连续内存存放表头和数据区:表头包括:容量、元素个数 在数据区地址前开辟8个字节内存分别存储容量和元素个数(都是整型,存储整型需要4字节) 容量不够需开辟新的内存时,数据区和表 阅读全文
posted @ 2020-09-20 16:41 Deaseyy 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 题外: django中间件 process_request process_view process_response process_exception process_render_template 执行顺序: process_request ——> 路由匹配——> 执行process_view 阅读全文
posted @ 2020-09-19 23:32 Deaseyy 阅读(871) 评论(0) 推荐(0) 编辑
摘要: class Foo(object): def __new__(cls, *args, **kwargs): # 1.根据类创建对象,并返回 # 2.执行返回的对象的__init__方法 # return '张三' # 执行张三(字符串对象)的__init__ 方法 return object.__n 阅读全文
posted @ 2020-09-19 15:41 Deaseyy 阅读(132) 评论(0) 推荐(0) 编辑