- 博客(44)
- 收藏
- 关注
原创 Django入门基础
《Django Web框架笔记》目录课程特点:学习难度大,大部分内容需要理解并记忆文件较多易混淆学习阶段注重框架使用,工作阶段注重实现业务逻辑综合应用强,小练习少Django框架的介绍2005年发布,采用Python语言编写的开源web框架早期的时候Django主做新闻和内容管理的一个重量级的 Python Web框架,Django 配备了常用的大部分组件基本配...
2020-01-13 19:55:21
139
原创 web前端html5初步学习
一、Web前端介绍1. 什么是网页网页是基于浏览器的应用程序,是数据展示的载体.2. 网页的组成浏览器代替用户向服务器发请求接收并解析数据展示给用户服务器存储数据处理并响应请求协议规范数据在传输过程中的打包方式3. 开发前的准备运行环境:浏览器,设置chrome为默认浏览器,作为网页文件的运行环境。调试工具:浏览器自带的调试工具,使用快捷键...
2019-12-24 14:33:04
117
原创 git与github初步学习
项目基础及工具文章目录项目基础及工具GIT简介GIT使用基本概念初始配置基本命令@扩展延伸版本控制保存工作区分支管理远程仓库GitHub介绍获取项目创建删除git仓库远程仓库操作命令软件项目开发流程项目注意事项项目工具的使用在线词典功能说明HTTPServer功能GIT简介什么是GITgit是一个开源的分布式版本控制系统,用于高效的管理各种大小项目和文件。代码管理工具的用途...
2019-12-24 14:25:50
165
1
原创 基于mysql数据库的几个练习代码
""" 通过程序描述登录注册过程,将其各封装为一个函数 def login(name,passwd): pass def register(name,passwd): pass""""""User --> user id name passwddb 数据库对象cur 游标对象"""def ...
2019-12-17 19:17:26
209
原创 mysql基础学习二
视图视图概念视图是存储的查询语句,当调用的时候,产生结果集,视图充当的是虚拟表的角色。其实视图可以理解为一个表或多个表中导出来的表,作用和真实表一样,包含一系列带有行和列的数据 视图中,用户可以使用SELECT语句查询数据,也可以使用INSERT,UPDATE,DELETE修改记录,视图可以使用户操作方便,并保障数据库系统安全,如果原表改名或者删除则视图也失效。视图操作创建视图语...
2019-12-17 18:59:28
167
原创 mysql基础学习一
MySQL数据库文章目录MySQL数据库数据库概述数据存储阶段数据库应用基础概念数据库分类和常见数据库认识关系型数据库和MySQLSQL语句建立数据库和数据表数据库操作数据表的管理表结构设计初步数据类型支持数据操作基础插入(insert)查询(select)where子句算数运算符比较运算符逻辑运算符位运算符更新表记录(update)删除表记录(delete)表字段的操作(alter)时间类型数...
2019-12-13 19:42:01
208
原创 正则表达式(re模块)基础
正则表达式动机文本处理已经成为计算机常见工作之一对文本内容的搜索,定位,提取是逻辑比较复杂的工作为了快速方便的解决上述问题,产生了正则表达式技术简介定义即文本的高级匹配模式,提供搜索,替换等功能。其本质是由一系列字符和特殊符号构成的字串,这个字串即正则表达式。原理通过普通字符和有特定含义的字符,来组成字符串,用以描述一定的字符串规则,比如:重复,位置等,来表达某...
2019-12-10 18:49:33
154
原创 基于pythonIO并发原理的服务器
HTTPServer v2.0主要功能 :【1】 接收客户端(浏览器)请求【2】 解析客户端发送的请求【3】 根据请求组织数据内容【4】 将数据内容形成http响应格式返回给浏览器升级点 :【1】 采用IO并发,可以满足多个客户端同时发起请求情况【2】 通过类接口形式进行功能封装【3】 做基本的请求解析,根据具体请求返回具体内容,同时处理客户端的非网页请求行为"...
2019-12-10 18:34:31
68
原创 IO并发编程及二进制位运算
IO 分类IO分类:阻塞IO ,非阻塞IO,IO多路复用,异步IO等阻塞IO1.定义:在执行IO操作时如果执行条件不满足则阻塞。阻塞IO是IO的默认形态。2.效率:阻塞IO是效率很低的一种IO。但是由于逻辑简单所以是默认IO行为。3.阻塞情况:因为某种执行条件没有满足造成的函数阻塞e.g. accept input recv处理IO的时间较长产生的阻塞状态e.g...
2019-12-10 18:29:13
115
原创 python基于tcp/ip和多线程的网络文件传输服务器代码
ftp 文件服务器功能【1】 分为服务端和客户端,要求可以有多个客户端同时操作。【2】 客户端可以查看服务器文件库中有什么文件。【3】 客户端可以从文件库中下载文件到本地。【4】 客户端可以上传一个本地文件到文件库。【5】 使用print在客户端打印命令输入提示,引导操作"""ftp 文件服务 客户端"""from socket import *import sys,ti...
2019-12-06 19:10:09
814
原创 网络并发通信
网络并发通信常见网络通信模型循环服务器模型 :循环接收客户端请求,处理请求。同一时刻只能处理一个请求,处理完毕后再处理下一个。优点:实现简单,占用资源少缺点:无法同时处理多个客户端请求适用情况:处理的任务可以很快完成,客户端无需长期占用服务端程序。udp比tcp更适合循环。多进程/线程网络并发模型:每当一个客户端连接服务器,就创建一个新的进程/线程为该客户端服务,客户端退...
2019-12-06 19:07:44
217
原创 模拟多线程中死锁产生的练习
"""模拟死锁的产生过程"""from time import sleepfrom threading import Thread,Lock# 账户类class Account: def __init__(self,_id,balance,lock): self.id = _id # 账户名 self.balance = balance # 存...
2019-12-06 18:57:13
103
原创 线程编程(含GIL问题,进程线程的区别联系)
线程编程(Thread)线程基本概念什么是线程【1】 线程被称为轻量级的进程【2】 线程也可以使用计算机多核资源,是多任务编程方式【3】 线程是系统分配内核的最小单元【4】 线程可以理解为进程的分支任务线程特征【1】 一个进程中可以包含多个线程【2】 线程也是一个运行行为,消耗计算机资源【3】 一个进程中的所有线程共享这个进程的资源【4】 多个线程之间的运行互不影响各自运行...
2019-12-06 18:47:48
105
原创 基于多线程的一个文件复制练习
练习:使用多个线程,同时从多个地方拷贝文件的某一部分最终在本地合并为一个提示: 1. 判断那些目录下有目标文件2. 有几个路径下有,就创建几个线程3. 每个线程负责一个路径,要选好下载文件的哪部分4. 多个线程下载的内容需要最后为一个文件from threading import Thread,Lockimport osfrom time import sleeplock = ...
2019-12-06 18:45:46
90
原创 基于python多进程的两个练习
练习1: 求100000以内质数之和分别使用4个进程和10个进程做这件事,并且分别统计执行时间,进行对比import timefrom multiprocessing import Processdef timeis(f): def wrapper(*args,**kwargs): start_time = time.time() res = f...
2019-12-06 18:05:42
324
原创 multiprocessing 模块(含进程池,消息队列)
multiprocessing 模块创建进程进程创建方法流程特点【1】 将需要子进程执行的事件封装为函数【2】 通过模块的Process类创建进程对象,关联函数【3】 可以通过进程对象设置进程信息及属性【4】 通过进程对象调用start启动进程【5】 通过进程对象调用join回收进程基本接口使用Process()功能 : 创建进程对象参数 : target 绑定要执行的目标...
2019-12-03 20:26:09
329
原创 python中的孤儿和僵尸进程
孤儿和僵尸孤儿进程 : 父进程先于子进程退出,此时子进程成为孤儿进程。特点: 孤儿进程会被系统进程收养,此时系统进程就会成为孤儿进程新的父进程,孤儿进程退出该进程会自动处理。僵尸进程 : 子进程先于父进程退出,父进程又没有处理子进程的退出状态,此时子进程就会称为僵尸进程。特点: 僵尸进程虽然结束,但是会存留部分PCB在内存中,大量的僵尸进程会浪费系统的内存资源。如何避免...
2019-12-03 19:20:16
159
原创 python小型聊天室
聊天室思路分析需求的整理 : 达到什么效果,如何工作技术点的分析通信套接字udp通信数据流方向c --> s客户端 请求 —> 服务端处理信息 客户端–》 服务端 -->其他客户端#服务端需要存储用户什么信息,怎么存#用户名 地址[(name,address),(name,address)...]{name:address,}class...
2019-12-03 19:10:25
170
原创 进程概念及fork多进程函数
进程线程编程意义: 充分利用计算机CPU的多核资源,同时处理多个应用程序任务,以此提高程序的运行效率。实现方案 :多进程 , 多线程进程(process)进程理论基础定义 : 程序在计算机中的一次运行。程序是一个可执行的文件,是静态的占有磁盘。进程是一个动态的过程描述,占有计算机运行资源,有一定的生命周期。系统中如何产生一个进程【1】 用户空间通过调用程序接口或...
2019-12-02 19:44:21
119
原创 http协议及html文件
HTTP传输HTTP协议 (超文本传输协议)用途 : 网页获取,数据的传输特点应用层协议,传输层使用tcp传输简单,灵活,很多语言都有HTTP专门接口无状态,协议不记录传输内容http1.1 支持持久连接,丰富了请求类型网页请求过程1.客户端(浏览器)通过tcp传输,发送http请求给服务端2.服务端接收到http请求后进行解析3.服务端处理请求内容,组织响...
2019-12-02 19:38:10
1495
原创 python中的struct模块
struct模块进行数据打包原理: 将一组简单数据进行打包,转换为bytes格式发送。或者将一组bytes格式数据,进行解析。接口使用Struct(fmt)功能: 生成结构化对象参数:fmt 定制的数据结构st.pack(v1,v2,v3....)功能: 将一组数据按照指定格式打包转换为bytes参数:要打包的数据返回值: bytes字节串st.unpack(byte...
2019-12-02 19:32:23
187
原创 三次握手与四次挥手(转)
三次握手三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。进行三次握手的主要作用就是为了确认双方的接收能力和发送能力是否正常、指定自己的初始化序列号为后面的可靠性传送做准备。实质上其实就是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号,交换TCP窗口大小信息。刚开始客户端处于 Closed 的状态,服务端...
2019-12-02 19:21:31
43
原创 udp套接字及socket总结(接网络编程基础第一部分)
UDP套接字编程服务端流程创建数据报套接字sockfd = socket(AF_INET,SOCK_DGRAM)绑定地址sockfd.bind(addr)消息收发data,addr = sockfd.recvfrom(buffersize)功能: 接收UDP消息参数: 每次最多接收多少字节返回值: data 接收到的内容 addr 消息发送方地址n ...
2019-12-02 19:09:41
288
原创 python缓冲区练习程序
"""编写一个程序,向一个文件中不断写入如下内容: 1. 2019-1-1 18:18:18 2. 2019-1-1 18:18:20 3. 2019-1-1 18:18:22 4. 2019-1-1 18:18:24 5. 2019-1-1 18:19:56 * 每次写入占一行 * 这是一个死循环,2s写入一次,但是可以实时查看写入内容 * 当程序...
2019-11-28 19:47:27
193
1
原创 网络编程基础第一部分
网络编程基础计算机网络功能主要包括实现资源共享,实现数据信息的快速传递。OSI七层模型制定组织: ISO(国际标准化组织)作用:使网络通信工作流程标准化应用层 : 提供用户服务,具体功能有应用程序实现表示层 : 数据的压缩优化加密会话层 : 建立用户级的连接,选择适当的传输服务传输层 : 提供传输服务网络层 : 路由选择,网络互联链路层 : 进行数据交换,控制具体数据...
2019-11-28 19:36:02
115
原创 python实现对普通文件或二进制文件拷贝
""" 写一个程序,实现对一个文件进行拷贝 * input() 输入一个文件位置 * 将该文件'拷贝'到主目录下 * 文件可能是文本文件也可能是二进制文件 * 文件可能比较大,不允许一次性读取温馨提示: 从源文件读取内容,写入到目标新文件中"""home = "/home/tarena/"img = input(">&...
2019-11-28 19:29:24
1043
原创 IO基础讲解及文件缓冲区(11.28补充偏移量和管理函数)
IO定义IO指数据流的输入输出,从计算机应用层编程层面来说,在内存中存在数据交换的操作一般认为是IO操作,比如和终端交互 ,和磁盘交互,和网络交互等程序分类IO密集型程序:在程序执行中有大量IO操作,而cpu运算较少。消耗cpu较少,耗时长。计算密集型程序:程序运行中计算较多,IO操作相对较少。cpu消耗多,执行速度快,几乎没有阻塞。文件文件是保存在持久化...
2019-11-28 19:17:37
238
原创 Linux系统操作命令文档
Linux 操作系统文章目录Linux 操作系统Linux操作系统简介Linux 操作系统结构文件系统结构主要目录功能绝对路径和相对路径环境变量编译器使用vi使用Vi常用命令shell命令基础命令压缩管理软件管理用户管理ssh服务Linux下的SSH服务ssh命令ssh登录远程主机scp命令ssh秘钥生产ssh秘钥步骤shell脚本介绍生产ssh秘钥步骤shell脚本介绍Linux操作系统简...
2019-11-26 19:18:15
199
原创 亿豪的python学习 day18
今天的学习内容函数作为参数将核心逻辑传入方法体,使该方法的适用性更广,体现了面向对象的开闭原则。lambda 表达式1. 定义:是一种匿名方法。2. 作用:作为参数传递时语法简洁,优雅,代码可读性强。随时创建和销毁,减少程序耦合度。3. 语法– 定义:变量 = lambda 形参: 方法体– 调用:变量(实参)4. 说明:– 形参没有可以不填– 方法体只能有一条语句,且...
2019-11-22 20:12:30
77
原创 亿豪的python学习 day17
今天的学习内容生成器generator定义:能够动态(循环一次计算一次返回一次)提供数据的可迭代对象。作用:在循环过程中,按照某种算法推算数据,不必创建容器存储完整的结果,从而节省内存空间。数据量越大,优势越明显。以上作用也称之为延迟操作或惰性操作,通俗的讲就是在需要的时候才计算结果,而不是一次构建出所有结果。生成器 --> 迭代器 + 可迭代对象生成器函数定义:含有y...
2019-11-21 19:25:13
83
原创 亿豪的python学习 day16
今天的学习内容异常处理Error异常定义:运行时检测到的错误。现象:当异常发生时,程序不会再向下执行,而转到函数的调用语句。常见异常类型:– 名称异常(NameError):变量未定义。– 类型异常(TypeError):不同类型数据进行运算。– 索引异常(IndexError):超出索引范围。– 属性异常(AttributeError):对象没有对应名称的属性。– 键异常(...
2019-11-20 19:35:40
97
原创 亿豪的python学习 day15
今天的学习内容程序结构模块 Module定义包含一系列数据、函数、类的文件,通常以.py结尾。作用让一些相关的数据,函数,类有逻辑的组织在一起,使逻辑结构更加清晰。有利于多人合作开发。导入import1. 语法:import 模块名import 模块名 as 别名2. 作用:将某模块整体导入到当前模块中3. 使用:模块名.成员from import1. 语法:fr...
2019-11-19 20:20:39
61
原创 亿豪的python学习 day14
今天的学习内容面向对象最后一天""" 技能系统 特征: 封装:将每种具体影响效果单独定义到类中 继承:定义影响效果类,统一各种具体影响效果的做法。 从而隔离了释放器与具体影响效果的变化。 多态:每种具体影响效果都是重写影响效果类 ...
2019-11-18 19:02:39
86
原创 亿豪的python学习 day13
今天的学习内容继承语法角度讲继承方法1. 代码:class 父类:def 父类方法(self):方法体class 子类(父类):def 子类方法(self):方法体儿子 = 子类()儿子.子类方法()儿子.父类方法()2. 说明:子类直接拥有父类的方法.内置函数isinstance(对象, 类型)返回指定对象是否是某个类的对象。issubclass(类型,类...
2019-11-18 09:29:19
128
1
原创 亿豪的python学习 day12
今天的学习内容注:今天写了一天的学生管理系统,代码如下所示"""学生管理系统 数据模型类:StudentModel 数据:编号 id,姓名 name,年龄 age,成绩 score 逻辑控制类:StudentManagerController 数据:学生列表 __stu_list 行为:获取列表 stu_list,添加学生 add_student, 删除学生remove_...
2019-11-18 08:24:58
108
原创 亿豪的python学习 day11
今天的学习内容三大特征封装数据角度讲1. 定义:将一些基本数据类型复合成一个自定义类型。2. 优势:将数据与对数据的操作相关联。代码可读性更高(类是对象的模板)。行为角度讲1. 定义:类外提供必要的功能,隐藏实现的细节。2. 优势:简化编程,使用者不必了解具体的实现细节,只需要调用对外提供的功能。3. 私有成员:(1) 作用:无需向类外提供的成员,可以通过私有化进行屏...
2019-11-14 20:42:08
105
原创 亿豪的python学习 day10
今天的学习内容面向对象 Object Oriented概述面向过程分析出解决问题的步骤,然后逐步实现。例如:婚礼筹办– 发请柬(选照片、措词、制作)– 宴席(场地、找厨师、准备桌椅餐具、计划菜品、购买食材)– 婚礼仪式(定婚礼仪式流程、请主持人)公式:程序 = 算法 + 数据结构优点:所有环节、细节自己掌控。缺点:考虑所有细节,工作量大。面向对象找出解决问题的人,然后分...
2019-11-13 19:11:33
98
原创 亿豪的python学习 day09
今天的学习内容上午2048游戏算法的六个练习"""2048 游戏核心算法"""#全局变量list_merge = [0,0,2,0]#2 2 0 0#1.定义函数,零元素移动到末尾#输入:[2,0,2,0]#输出:[2,2,0,0](不用返回值)def move_zero_to_end(): for i in range(len(list_merge)-1): ...
2019-11-12 20:30:18
394
原创 亿豪的python学习 day08
今天的学习内容可变/不可变类型在传参时的区别不可变类型参数有:数值型(整数,浮点数,复数)布尔值boolNone 空值字符串str元组tuple固定集合frozenset可变类型参数有:列表 list字典 dict集合 set传参说明:不可变类型的数据传参时,函数内部不会改变原数据的值。可变类型的数据传参时,函数内部可以改变原数据。注:可以改变不代表一定要改变...
2019-11-11 20:50:06
70
原创 亿豪的python学习 day07
今天的学习内容固定集合 frozenset定义不可变的集合。作用固定集合可以作为字典的键,还可以作为集合的值。基础操作创建固定集合:frozenset(可迭代对象)运算等同于set函数 functionpycharm相关设置1. “代码自动完成”时间延时设置File -> Settings -> Editor -> General -> Code ...
2019-11-08 19:43:23
76
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人