02 2018 档案
vue之导入Bootstrap以及jQuery的两种方式
摘要:Vue引入bootstrap主要有两种方法 方法一:在main.js中引入,此方法导入的bootstrap中对于html,body的一些预设置的css样式可能无效。 一、引入jQuery 在当前项目的目录下(就是package.json),运行命令 cnpm install jquery --sav
阅读全文
Github之协同开发
摘要:一、协同开发 1、引子:假如三个人共同开发同一份代码,每个人都各自安排了任务,当每个人都完成了一半的时候,提交不提交呢? 要提交,提交到dev吗,都上传了一半,这样回家拿出来的代码根本跑不起来。所以, 为每一个人创建一个分支,各自都在各自的分支上写代码,互不影响。 很短时间内大家暂时先合并一次,不然
阅读全文
自定义实现栈的功能
摘要:Stack() 建立一个空的栈对象 push() 吧一个元素添加到栈的最顶层 pop() 删除栈最顶层的元素,并返回这个元素 gettop() 取栈顶元素 isEmpty() 判断栈是否为空 size() 返回栈中元素的个数 peek() 返回最顶层的元素,并不删除它
阅读全文
2.17网路编程的复习
摘要:1、什么是并发: 2、生产者和消费者模型: 3、IPC(进程间的三种通信方式): 4、实现并发有哪些手段? 5、同步和异步:同步和异步就是提交任务的方式 6、是不是所有的并发都更效率有关? 7、协程:一个任务运行完,切到另一个任务,单线程下实现并发 8、线程、协程、进程是不是真的存在呢? 9、什么时
阅读全文
字符串的切片
摘要:切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分)。我们使用一对方括号、起始偏移量start、终止偏移量end 以及可选的步长step 来定义一个分片。 格式: [start:end:step] [:] 提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串 [start:]
阅读全文
如何判断一个对象是否是可调用对象
摘要:基本上判断python对象是否为可调用的函数,有三种方法: 1、使用内置的callable函数 用于检查对象是否可调用,返回True也可能调用失败,但是返回False一定不可调用 2、判断对象类型是否是FunctionType 3、判断对象是否实现__call__方法 例子:
阅读全文
人生苦短,我用Python(目录)
摘要:目录 一、计算机基础 二、Python基础 三、函数 四、常用模块 五、模块和包 六、面向对象 七、网络编程socket 八、数据库 九、前端 十、Python Web框架 十一、版本控制--GIT 十二、爬虫 十三、前端框架之VUE 十四、量化投资与Python 十五、算法 十六、设计模式 十七、
阅读全文
python 之面向对象的三大特性
摘要:面向对象的三大特性 继承 继承和组合 继承进阶 封装 封装(有待完善) 多态 多态 继承和组合 继承进阶 封装(有待完善) 多态
阅读全文
Vue+restfulframework示例
摘要:一、简单回顾vue 前不久我们已经了解了vue前端框架,所以现在强调几点: 二、流程详细 1、创建脚手架 2、运行 3、显示组件 4、写路由 1 import Vue from 'vue' 2 import Router from 'vue-router' 3 import Index from '
阅读全文
解决跨域问题
摘要:一、为什么会有跨域问题? 是因为浏览器的同源策略是对ajax请求进行阻拦了,但是不是所有的请求都给做跨域,像是一般的href属性,a标签什么的都不拦截。 二、解决跨域问题的两种方式 JSONP CORS 三、JSONP 先简单来说一下JSONP,具体详细详见上面JSONP JSONP是json用来跨
阅读全文
django rest framework(4)
摘要:目录 一、分页 二、视图 三、路由 四、渲染器 一、分页 试问如果当数据量特别大的时候,你是怎么解决分页的? 方式a、记录当前访问页数的数据id 方式b、最多显示120页等 方式c、只显示上一页,下一页,不让选择页码,对页码进行加密 1、基于limit offset 做分页 1 urlpattern
阅读全文
django rest framework(3)
摘要:目录 一、版本 二、解析器 三、序列化 四、请求数据验证 一、版本 程序也来越大时,可能通过版本不同做不同的处理 没用rest_framework之前,我们可以通过以下这样的方式去获取。 1 class UserView(APIView): 2 def get(self,request,*args,
阅读全文
Django Rest Framework(2)
摘要:目录 一、认证 二、权限 三、限制访问频率 四、总结 一、认证(补充的一个点) 认证请求头 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 from rest_framework.views import APIView 4 from rest_
阅读全文
Django 之缓存
摘要:一、缓存 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存或者Redis中之前缓存
阅读全文
RESTful API
摘要:目录 一、什么是RESTful 二、什么是API 三、RESTful API规范 四、基于Django实现API 五、基于Django Rest Framework框架实现 一. 什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational Stat
阅读全文
restful framework 认证源码流程
摘要:一、请求到来之后,都要先执行dispatch方法,dispatch方法方法根据请求方式的不同触发get/post/put/delete等方法 注意,APIView中的dispatch方法有很多的功能 二、上面是大致步骤,下面我们来具体分析一下,看每个步骤中都具体干了什么事 1、对request进行加
阅读全文
其他排序
摘要:一、基数排序 二、希尔排序 思路: 希尔排序是一种分组插入排序算法。 首先取一个整数d1=n/2,将元素分为d1个组,每组相邻量元素之间距离为d1,在各组内进行直接插入排序; 取第二个整数d2=d1/2,重复上述分组排序过程,直到di=1,即所有元素在同一组 希尔排序每趟并不使某些元素有序,而是使整
阅读全文
算法之动态规划问题
摘要:态规划算法是通过拆分问题,定义问题状态和状态之间的关系,使得问题能够以递推的方式去解决。 动态规划的核心点:定义状态与转移方程(最优子结构)重新定义问题: 一、最长上升子序列(LIS):给定一个序列X,求X长度最大的连续递增的子序列。例:X=[1,7,2,8,3,5,2],LIS(X)=[1,2,3
阅读全文
算法之迷宫问题
摘要:题目:给一个二维列表,表示迷宫(0表示通道,1表示围墙)。给出算法,求一条走出迷宫的路径。 解决思路: 在一个迷宫节点(x,y)上,可以进行四个方向的探查:maze[x-1][y], maze[x+1][y], maze[x][y-1], maze[x][y+1] 思路:从一个节点开始,任意找下一个
阅读全文
数据结构相关知识
摘要:一、什么是数据结构? 二、数据结构的分类 数据结构按照其逻辑结构可分为线性结构、树结构、图结构 线性结构:数据结构中的元素存在一对一的相互关系 树结构:数据结构中的元素存在一对多的相互关系 图结构:数据结构中的元素存在多对多的相互关系 下面就来说说线性结构,树结构见链接,图结构待续。。 三、线性结构
阅读全文
设计模式
摘要:一、什么是设计模式? 二、设计模式七大原则 1、开放封闭原则:一个软件实体如类,模块和函数应该对扩展是开放的,对修改是关闭的。即软件实体应尽量在不修改原有代码的情况下进行扩展(装饰器) 2、里氏替换原则:重写父类里面的方法,逻辑可能不一样,但是返回的结果参数啥的要一样(所有引用基类的地方必须能透明的
阅读全文
常用排序算法
摘要:目录 一、冒泡排序 二、选择排序 三、插入排序 四、快速排序 五、堆排序 六、归并排序 七、基数排序 八、希尔排序 九、桶排序 十、总结 一、冒泡排序 1、思路:首先,列表每两个相邻的数比较大小,如果前边的比后边的大,那么这两个数就互换位置。就像是冒泡一样 2、代码关键点: 趟数:n-1趟 无序区
阅读全文
算法之---堆的简单介绍
摘要:一、堆的分类 大根堆:一棵完全二叉树,满足任一节点都比其孩子节点大小根堆:一棵完全二叉树,满足任一节点都比其孩子节点小 二、堆的向下调整性质 前提:节点的左右子树都是堆,但是自身不是堆 三、堆排序 内置模块 优先队列:一些元素的集合,POP操作每次执行都会从优先队列中弹出最大(或最小)的元素。堆——
阅读全文
树和二叉树简介
摘要:一、树 1、什么是树? 树状图是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点: 每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节点
阅读全文