自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

转载 Django框架之第六篇(模型层补充)

在设置外键字段时需要注意:当你使用django2.x的版本时候,在建立外键关系时,需要你手动添加几个关键点参数models.cascade #设置级联删除db_constraints数据库查询与优化only和deferorm内所有的语句操作,都是惰性操作:只会在你真正需要数据的时候才会走数据库,如果你单单只写orm语句是不会走数据库的。这样设计的好处在...

2019-09-20 16:51:00 134

转载 Django框架之第五篇(模型层)

一、单表查询之神奇的双下划线查询价格大于200的书籍models.Book.objects.filter(price__gt=200) #price>200 大于__gt查询价格小于200的书籍models.Book.objects.filter(price__lt=200) 小于__lt查询价格大于等于200的书籍models....

2019-09-19 22:42:00 171

转载 Django框架之第四篇(视图层和模板层)

一、视图层补充render返回一个html页面,并且还能够给该页面传递数据return render(request,'user_list.html',{'user_lists':user_lists}) #'user_lists'传递给页面render内部原理from django.template import Template,Contextdef...

2019-09-18 21:43:00 372

转载 Django框架之第三篇(路由层,视图层)

一、Django请求生命周期二、路由层 urls.pyurl()方法 第一个参数其实就是一个正则表达式,一旦前面的正则匹配到了内容,就不会再往下继续匹配,而是直接执行对应的视图函数。django在路由匹配的时候,当你在浏览器中没有敲最后的斜杠,django会先拿着你没有敲斜杠的结果去匹配,如果没有匹配上,会让浏览器在末尾加斜杠再发一次请求,再去匹配一次,如果...

2019-09-17 21:07:00 155

转载 Django框架之第二篇

本节知识点大致为:静态文件配置、form表单提交数据后端如何获取、request方法、pycharm连接数据库,django使用mysql数据库、表字段的增删改查、表数据的增删改查一、创建app,创建之后一定要先去settings.py注册二、静态文件配置html文件默认全部放在templates文件夹下1、对于前段已经写好了的文件 我们只是拿过来使用 那么这...

2019-09-16 20:55:00 102

转载 Django框架简介

python三大主流框架1.Django:大而全 自带的功能特别特别多 就类似于航空母舰 有时候过于笨重 2.Flask:短小精悍 自带的功能特别特别少 全都是依赖于第三方组件 flask框架第三方的组件特别多 如果把flask第三方全部加起来 完全可以盖过Django 比较受限于第三方的开发者 3.Tornado:天生的异步非阻塞框架 速度特别快 能够抗住高...

2019-09-12 16:58:00 104

转载 前端框架之Bootstrap框架

下载地址:https://v3.bootcss.com/,下载Bootstrap3版本下载之后把文件中不需要的文件都删掉需要获取的样式代码,可以直接从这些地方找到,然后复制一、HTML页面导入文件,因为Bootstrap要依赖于jquery,所以也要把jquery导进来二、布局容器Bootstrap需要为页面内容和栅格系统包裹一个.cont...

2019-09-11 19:45:00 90

转载 前端基础之JQuery

JQueryjQuery介绍jQuery是一个轻量级的、兼容多浏览器的JavaScript库。jQuery使用户能够更方便地处理HTML Document、Events、实现动画效果、方便地进行Ajax交互,能够极大地简化JavaScript编程。它的宗旨就是:“Write less, do more.“jQuery的优势一款轻量级的JS框架。jQuery...

2019-09-09 21:37:00 196

转载 前端基础之BOM和DOM

BOM和DOMBOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进行“对话”。DOM (Document Object Model)是指文档对象模型,通过它,可以访问HTML文档的所有元素。一、BOMwindow对象所有浏览器都支持window对象。它表示浏览器窗口。一些常用的Window方法:...

2019-09-09 20:20:00 134

转载 前端基础之JS

JavaScript引入方式Script标签内写代码<script> // 在这里写你的JS代码</script>引入额外的JS文件<script src="myscript.js"></script>JavaScript注释//单行注释/*这是多行注释*/结束符...

2019-09-07 10:32:00 103

转载 前端基础之CSS

CSS介绍css层叠样式表,定义如何显示HTML元素当浏览器读到一个样式表,他就会按照这个样式表来对文档进行格式化(渲染)CSS语法每个CSS样式都由两部分组成:选择器和声明。声明又包括属性和属性值。每个声明之后用分号结束。选择器是标签名或者id,class的值,声明只有一个的时候,可以不用写分号结尾(但是最好写上,更好看)CSS注释/*这是...

2019-09-04 16:01:00 148

转载 前端基础之HTML

一、什么是前端  任何与用户直接打交道的操作界面都可以称之为前端 比如:电脑界面、手机界面、平板界面  什么是后端:就是不直接与用户打交道二、web服务器的本质    浏览器中输入网址回车发生了几件事:  1.浏览器朝服务器发送请求  2.服务端接收请求  3.服务端返回相应的响应  4.浏览器接收响应 根据特定的规则渲染页面展示给用户(就是通过后面说到...

2019-09-03 20:53:00 84

转载 youku项目总结(粗略总结)

一、ORM之前我们都是以文件保存的形式存储数据,这次我们用的是数据库结合python使用,用到ORM:关系型映射类》》数据库的一张表对象》》表一条记录对象.属性》》记录某一个字段对应的值关于ORM我们其实可以调用别人已经写好的,这次我们是自己写ORM。这个就是在Django中调用别人的写好的字段四要素:字段名字段类型主键默认值...

2019-08-30 09:52:00 122

转载 MySQL视图、触发器、事务、存储过程、内置函数、流程控制、索引

一、视图1.什么是视图视图就是通过查询得到一张虚拟表,然后保存下来,下次直接使用即可2.为什么要用视图如果频繁使用一张虚拟表,可以不用重复查询3.如何使用视图create view teacher2course as #把下面查询的结果放在视图teacher2course中select * from teacher inner join course ...

2019-08-23 16:06:00 116

转载 MySQL多表查询,Navicat使用,pymysql模块,sql注入问题

一、多表查询#建表create table dep(id int,name varchar(20) );create table emp(id int primary key auto_increment,name varchar(20),sex enum('male','female') not null default 'male',...

2019-08-22 17:25:00 123

转载 docker学习笔记(一)--介绍和基本组成

Docker基本介绍1.什么是dockerdocker本身不是容器,是创建容器的工具,是应用容器引擎,将应用程序自动部署到容器的开源引擎。2.docker的目标特点简单轻量,快速开发,具备可移植性,开发、测试、生产都能使用相同的环境。3.docker的使用场景  使用docker的容器开发、测试、部署服务  创建隔离的运行环境  搭建测试环境Docke...

2019-08-21 19:31:00 70

转载 MySQL单表查询

前期表准备,创建一张员工表,往里面插入数据create table emp( id int not null unique auto_increment, name varchar(20) not null, sex enum('male','female') not null default 'male', #大部分是男的 age int(3) un...

2019-08-21 17:19:00 89

转载 MySQL表关系--外键

一、外键前戏如果我们把所有的信息都记录在一张表中会带来的问题:  1.表的结构不清晰  2.浪费磁盘空间  3.表的扩展性极差所以我们要把这种表拆成几张不同的表,分析表与表之间的关系。确定表与表之间的关系,一定要换位思考(必须两方都考虑周全之后才能得出结论)学生与班级表:1.站在学生的角度看班级:能否多个学生在一个班级 (一个班级能否有多个学生) 可...

2019-08-20 17:32:00 169

转载 MySQL表操作

一、存储引擎不同的数据应该有不同的处理机制mysql存储引擎:  Innodb:默认的存储引擎,查询速度较myisam慢,但是更安全  myisam:mysql老版本用的存储引擎  memory:内存引擎(数据全部存在内存中,重启数据就消失了)  blackhole:无论存什么 都立马消失(黑洞)用 show engines; 查询每个存储引擎存取数据的特点...

2019-08-19 20:08:00 85

转载 初识MySQL

一、数据库概念1.随意的存到了一个文件中,数据格式也是千差万别的2.软件开发目录规范  规定了数据存放的位置,数据都是保存在本地的3.将保存数据的部分,存到一个公共的地方,所有的用户涉及数据相关,都必须来这个公共地方查找。二、数据库之MySQL本质就是一款基于网络通信的应用软件,任何基于网络通信的软件底层都是socket服务端  基于socket通信 ...

2019-08-16 17:12:00 65

转载 python之路——阅读目录

阅读目录希望大家多多交流,有错误的地方请随时指正,笔记记得可能有点杂一、python入门计算机基础编程语言发展史和python安装二、数据类型、字符编码、文件处理python基础数据类型python流程控制数字类型、字符串、列表及其内置方法列表、字典、集合、元组常用操作及内置方法编码格式和文件操作文件操作的补充encode和de...

2019-08-15 18:57:00 118

转载 进程池和线程池、协程、TCP单线程实现并发

一、进程池和线程池当被操作对象数目不大时,我们可以手动创建几个进程和线程,十几个几十个还好,但是如果有上百个上千个。手动操作麻烦而且电脑硬件跟不上,可以会崩溃,此时进程池、线程池的功效就能发挥了。我们可以通过维护一个进程池、线程池来控制进程数目和线程数目。在保证计算机硬件安全的情况下最大限度的利用计算机,池其实是降低了程序的运行效率,但是保证了计算机硬件的安全。注意点:在使用进程...

2019-08-15 16:32:00 136

转载 GIL全局解释锁,死锁,信号量,event事件,线程queue,TCP服务端实现并发

一、GIL全局解释锁在Cpython解释器才有GIL的概念,不是python的特点在Cpython解释器中,同一个进程下开启的多线程,同一时刻只能有一个线程执行,无法利用多核优势。1.GIL介绍GIL本质就是一把互斥锁,既然是互斥锁,所有互斥锁的本质都是一样,都是将并发运行变成串行,以此来保证数据的安全性。用来阻止同一个进程下的多个线程的同时执行。保护不同的数据的安全,就...

2019-08-14 17:15:00 182

转载 进程补充和线程的介绍

一、进程间通信--队列前面说到进程之间的数据不能直接进行交互,这里用IPC机制进行交互。创建共享的进程队列,Queue是多进程安全的队列,可以使用Queue实现多进程之间的数据传递。Queue([maxsize]) 创建共享的进程队列。参数 :maxsize是队列中允许的最大项数。如果省略此参数,则无大小限制。底层队列使用管道和锁定实现。 管道+锁我...

2019-08-12 16:55:00 94

转载 进程的介绍和使用

一、进程1.进程:顾名思义,进程即正在执行的一个程序的过程想要真正的了解进程,必须事先了解操作系统,需要具备的一些理论基础:操作系统:1.提供软硬件资源2.管理、调度进程多道技术: 1.产生背景:针对单核,实现并发 2.空间上的复用 多个程序共用一套计算机硬件 3.时间上的复用 切换+...

2019-08-09 20:06:00 157

转载 异常处理和UDP Socket套接字

一、异常处理1.什么是异常处理:  程序在运行过程中出现了不可预知的错误,并且该错误没有对应的处理机制,那么就会以异常的形式表达出来,造成的影响就是整个程序无法再正常进行。2.异常的结构:  1、异常的类型  2、异常的信息  3、异常的位置3.异常的种类分为两大类:  1.语法错误:是你程序立刻就能解决的,这种错误是不能被容忍的,语法上的错误,发现之后应...

2019-08-08 16:02:00 355

转载 TCP Socket 套接字 和 粘包问题

一、Scoket 套接字Scoket是应用层(应用程序)与TCP/IP协议通信的中间软件抽象层,它是一组接口。也可以理解为总共就三层:应用层,scoket抽象层,复杂的TCP/IP协议基于TCP协议的scoket tcp是基于链接的,必须先启动服务端,然后再启动客户端去链接服务端scoket 简单版本 send和recv是相辅相成的,必须要配对使用。recv是跟内...

2019-08-07 20:28:00 142

转载 网络编程

一、网络编程  软件开发架构    C/S架构 (client/server)      c:客户端      s:服务端    B/S架构(browser/server)        b:浏览器      s:服务器    ps:bs架构本质也是cs架构  手机端现在看上去cs架构比较火,实际上bs已经在崛起。类似于在微信和支付宝上都有很多其他ap...

2019-08-06 20:33:00 85

转载 面向对象高级——反射和元类

参考链接:https://www.cnblogs.com/yangyuanhu/p/11207450.html#autoid-0-0-0一、反射什么是反射,其实是反省,自省的意思反射指的是一个对象应该具备,可以检测,修改,增加自身属性的能力,反射是通过字符串操作属性。涉及的四个函数,这四个函数就是普通的内置函数,没有双下划线,与print等等没有区别。class ...

2019-07-30 17:19:00 106

转载 面向对象三大特性之——多态和一些内置函数

一、多态  概念:    一种事物具备多种不同的形态  例如: 水 (固态、气态、液态)  官方解释:多个不同类对象可以响应同一个方法,产生不同的结果。  需要强调的是:多态不是一种特殊的语法,而是一种状态,特性(即多个不同对象可以响应同一个方法,产生不同的结果) 即多个对象有相同的使用方法。  好处:对于使用者而言,大大的降低了使用难度。我们之前写的USB接口...

2019-07-29 16:17:00 81

转载 面向对象三大特性之——封装

一、什么是封装封装就是将复杂的丑陋的,隐私的细节隐藏到内部,对外提供简单的使用接口对外隐藏内部实现细节,并提供访问的接口。二、为什么需要封装两个目的:1.为了保证 关键数据的安全性 2.对外部隐藏实现细节,隔离复杂度三、什么时候应该封装当有一些数据不希望外界可以直接修改时,或者当有一些函数不希望给外界使用时使用语法:将要封装的属性或者方法名称前加上双下划线...

2019-07-26 16:51:00 190

转载 面向对象三大特性之——继承

一、什么是继承继承是一种关系,描述两个对象之间,什么是什么的关系。就是两个类之间有什么关联,可以用到相同的属性或者方法。例如a继承了b,a就能直接使用b已经存在的方法和属性。a称之为子类,b称之为父类,也称之为基类。二、为什么要使用继承继承的一方可以直接使用被继承一方已经有的东西,其目的是为了重用已经写好的代码,提高重用性。三、如何使用继承语法:cla...

2019-07-25 21:40:00 276

转载 面向对象基础知识点

一、什么是面向对象  面向对象是一种编程思想,是前辈们总结出来的经验,指导程序员如何编写出更好的程序。  核心是对象,程序就是一系列对象的集合,程序员负责调度控制这些对象来交互着完成任务。  对象不是凭空产生的,需要我们自己设计  面向对象的三大优点:1.扩张性强 2.灵活性高 3.重用性高  缺点:1. 程序的复杂度提高了 2.无法准确的预知结果  ...

2019-07-24 20:07:00 207

转载 如何将本地的项目添加到github上

参考链接:http://note.youdao.com/noteshare?id=d0b7990a83b024b0172b6d5c5617a8d0&sub=659F216B9046420991806E74E7FE09CB转载于:https://www.cnblogs.com/wangcuican/p/11232796.html

2019-07-23 16:49:00 69

转载 2019-7-19 包、logging模块、hashlib(加密模块)、openpyxl模块、深浅拷贝

一、包  什么是包:    它是一系列模块文件的结合体,表示形式就是一个文件夹。该文件内部通常会有一个__init__.py文件,包的本质还是一个模块,可以被调用,调包就相当于与调用__init__.py文件。为了其他文件调用包里面的模块、函数更方便我们可以在__init__里面就写好所有的模块和函数的调用。因为调包就相当于调用__init__.py文件,在其他文件想用包里面的函...

2019-07-19 21:05:00 111

转载 2019-7-18 collections,time,random,os,sys,序列化模块(json和pickle)应用

一、collections模块  1.具名元组:namedtuple(生成可以使用名字来访问元素的tuple)  表示坐标点x为1 y为2的坐标  注意:第二个参数可以传可迭代对象,也可以传字符串,但是字符串要隔开from collections import namedtuplepoint1 = namedtuple('坐标',['x','y','z']) ...

2019-07-18 21:03:00 105

转载 2019-7-17 正则表达式和re模块

一、re模块与正则表达式之间的关系  正则表达式不是python独有的,它是一门独立的技术  所有的编程语言都可以使用正则  但是如果你想在python中使用,你就必须依赖于re模块正则的官方定义:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定的字符、以及这些特定字符的组合,组成一个‘规则字符串’,这个‘规则字符串’用来表达对字符串的一种过滤逻辑。...

2019-07-17 20:09:00 630

转载 2019-7-16 import / from...import... 模块的调用

模块调用的总结:如果你是pycharm打开文件,会自动帮你把文件根目录加到system.path中,你要调用模块直接以根目录为基准开始找。1.假如你要调用和文件根目录为同级的文件,你直接import 模块名。2.如果你要调用的模块在文件夹下,用from ... import ...的方式来找。假如你的项目不是根目录的话,你可以通过sys.path.append(r'你的项目文件根目录...

2019-07-16 22:19:00 201

转载 2019-07-15 迭代器、生成器、一部分内置函数

一、迭代器  什么是迭代:更新换代的过程,每次的迭代都必须基于上一次的结果  迭代器:迭代取值的工具  为什么要用迭代器:迭代器给你提供了一种不依赖于索引取值的方式  1.可迭代对象:内置有__iter__方法的对象,是可迭代对象object.__iter__    基本数据类型中:是可迭代对象的有:      str,list,set,dict,tuple ...

2019-07-15 22:29:00 81

转载 encode和decode的区别

在运行的时候,有时候会报编码错误,本文就来研究一下这个问题。为什么会出现乱码呢?因为在文件存的时候格式和读取时候格式不一致就会乱码了。字符串在python内部的表示是unicode编码,也可以说现在的内存是unicode编码格式,硬盘是utf-8。平常的数据操作都是先把数据读取到内存中,所以内存中都是unicode编码格式。所以我们平常在做编码转换时候,通常用unicode作为中...

2019-07-15 19:46:00 837

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除