04 2020 档案
摘要:一、阻塞IO模型 import socket server = socket.socket() server.bind(('127.0.0.1',8080)) server.listen(5) while True: conn, addr = server.accept() while True:
阅读全文
摘要:一、死锁与递归锁 1.1、死锁 死锁:锁的使用,包括抢锁以及释放锁,当两个人分别各自抢到一把锁,有需要对方的锁时就会造成死锁,即程序阻塞 Thread:操作线程模块 Lock:互斥锁模块 用户1抢到了A锁,接着抢到了B锁,释放了b锁,又释放了a锁,在抢了B锁,睡眠2s, 用户2抢到了a锁,接着要去抢
阅读全文
摘要:手动书写生产者消费者代码 from multiprocessing import Process,Queue,JoinableQueue import time import random def producer(name,food,q): for i in range(5): data = f'
阅读全文
摘要:一、进程对象及其他方法 1.1、进程的查看方法 分别是使用cmd查询以及程序中查询 1.2、cmd查询进程 Windows:进入cmd后输入tasklist即可查询,tasklist |findstr PID可以查询具体进程 MSC:进入终端后输入ps aux即可查询,输入ps aux|grep P
阅读全文
摘要:简述操作系统发展史 简述操作系统发展史 - 手工操作:穿孔卡片 使用穿孔的卡片将数据手动输入计算机 同一时间机房只有一个人操作,cpu等待手工操作,资源的利用率低 - 联机批处理系统 成批地把输入机上的用户作业读入磁带,依次把磁带上的用户作业读入主机内存并执行并把计算结果向输出机输出 节省了每个用户
阅读全文
摘要:一、多道技术 1.1、必备知识点 并发:看起来像同时运行的就可以称之为并发 并行:真正意义上的同时执行 注:并行肯定算,单核的计算机肯定不能实现并行,但是可以实现并发!!! 补充:我们直接假设单核就是一个核,干活的就一个人,不要考虑cpu里面的内核数 1.2、多道技术 节省多个程序运行的总耗时 1.
阅读全文
摘要:编写远程执行命令的CS架构软件服务器 import socket msg = socket.socket(socket.AF_INET, socket.SOCK_STREAM) msg.bind(('127.0.0.1', 7242)) msg.listen(5) while 1: conn, ad
阅读全文
摘要:一、套接字工作流程 1.1、套接字流程 服务器端先初始化socket:(创建套接字模块) 和端口绑定bind:(将地址绑定到套接字) 对端口进行监听listen:(监听链接) 调用accept堵塞:(接收服务器链接) 等待客户端连接connect:(客户端尝试连接服务器) 客户端发送请求send:(
阅读全文
摘要:一、异常 1.1、什么是异常 异常是程序运行时,发生错误,产生的信号,会抛出异常,程序运行终止 1.2、异常处理的三个特征 1.异常的追踪信号 2.异常的类型 3.异常的内容1.3、为什么要处理异常 为了增强程序的健壮性,即使程序运行时出错了,也不会终止程序,而是捕捉异常。并且将错误信息记录到日志中
阅读全文
摘要:1、在元类中控制把自定义类的数据属性都变成大写 class Mymetaclass(type): def __new__(cls,name,bases,attrs): update_attrs={} for k,v in attrs.items(): if not callable(v) and n
阅读全文
摘要:一、反射 1.1、什么是反射 动态语言:未指定数据类型,执行时设定类型 静态语言:指定数据类型,定义时设定类型 python是一种动态语言,在程序运行过程中,可以“动态”’的(执行前)获取类型信息 1.2、为什么需要反射 提前知道对象的属性,判断己方是否拥有,避免报错 1.3、怎么使用反射 四种判断
阅读全文
摘要:一、多态 1.1、什么是多态 多态指的是同一事物有多重形态 例如:动物有多种形态,相当于父子集 1.2、为什么要有多态 多态具有多态性,即可以不考虑对象具体类型的状况下直接使用对象 class Animal: # 统一所有子类的方法 def say(self): print('动物基本的发声频率。。
阅读全文
摘要:作业二:在昨天作业的基础之上 # 1、引入属性访问控制+property# 2、引入继承与派生的概念来减少代码冗余 注意:要满足什么"是"什么的关系,不满足"是"的关系不要去继承 import uuid import pickle class Father: def __init__(self,na
阅读全文
摘要:一、继承 1.1、什么是继承 继承是一种创建新类的方式,新建的类可以称为子类或者派生类,父类可以称为基类或者超类,子类会遗传父类1.2、Python中的继承 python中支持多继承关系,一个子类可以继承一个或者多个父类 class Parent1(object): x=1111 class Par
阅读全文
摘要:1、练习上课作业讲解的面向对象代码,明天默写2、基于上课作业讲解的面向对象代码,扩写Student类3、加入序列化与反序列化操作4、对象之间的关联采用id号5、可以通过id找到对应的文件,然后从文件中反序列化出执行的学校、班级、课程、学生对象 class School: school_name =
阅读全文
摘要:一、封装介绍 封装、继承、多态是面向对象三大特性中最核心的一个 封装就是将数据和功能整合在一起。 针对封装的属性,将会控制对封装对象的访问,分别是隐藏和开放接口二、将封装的属性进行隐藏操作 2.1、怎么隐藏 在属性名前加入__前缀,将会实现对外隐藏的效果 2.2、隐藏时需要注意的问题 1、在类的外部
阅读全文
摘要:一、面向对象的介绍 1.1、面向对象以及面向过程的对比 1.1.1、面向过程: 核心:过程 目的:将程序流程化,按照步骤依次进行1.1.2、面向对象: 核心:对象 目的:将程序整合,对象相当于容器,用来盛放数据和功能 1.1.3、面向类: 核心:类(同类) 目的:将程序整合,类也是容器,用来盛放同类
阅读全文
摘要:选课系统项目中涉及到诸多数据与功能,要求引入面向对象的思想对其进行高度整合# 1、学校数据与功能整合# 2、课程数据与功能进行整合# 3、学生数据与功能进行整合# 4、讲师数据与功能进行整合# 5、班级数据与功能进行整合ps:不会写的同学,可以先用普通的方式,先把数据与功能都给写好,再考虑基于面向对
阅读全文
摘要:1、搭建项目的目录规范 - ATM 项目根目录 - readme.md 项目的说明书 - start.py 项目启动文件 - conf 配置文件 - settings.py - lib 公共方法文件 - common.py - core(用户视图层) 存放用户视图层代码文件 - src.py - i
阅读全文
摘要:一、一个项目的开始 1.1、项目的说明书 ATM+购物车 1.2、项目需求 1.额度15000或自定义 --> 注册功能 2.实现购物商城,买东西加入购物车,调用信用卡接口结账 --> 购物功能、支付功能 3.可以提现,手续费5% --> 提现功能 4.支持多账户登录 --> 登录功能 5.支持账户
阅读全文
摘要:一、logging模块 日志模块 1.1、日志模块输出位置 1.终端 2.文件 filename='access.log', # 不指定,默认打印到终端 1.2、日志格式 format='%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(me
阅读全文

浙公网安备 33010602011771号