摘要: 存取数据的演变史 文本文件 文本文件有两个主要的缺点: ​ 第一个就是不能保证多用户存取的文件路径一致 ​ 第二个就是不能保证多用户存取的数据格式一致 软件开发目录规范 软件开发目录规范了数据文件的大致存储位置: ​ db文件夹;但是针对数据格式还是没有完全的统一 数据库服务(重点) 统一路径 统一 阅读全文
posted @ 2022-11-22 19:50 吴仁耀 阅读(180) 评论(0) 推荐(0)
摘要: 多进程实现TCP服务端并发 服务端 from multiprocessing import Process import socket """ 服务端的三个条件: 1、有固定的IP和PORT。 2、24小时不间断提供服务。 3、能够支持并发。 """ def get_server(): server 阅读全文
posted @ 2022-11-21 21:50 吴仁耀 阅读(88) 评论(0) 推荐(0)
摘要: 同步、异步、阻塞、非阻塞概念 前言 在实际的开发中,经常会听到同步,异步,阻塞,非阻塞这些编程概念,每次遇到的时候都会蒙圈,尤其是在一些场景下同步与阻塞,异步与非阻塞感觉没啥区别,但其实这四个术语描述的事物还真不是一回事。 同步和异步 同步/异步描述的是消息通信机制 同步方法表明: 就是在发出一个调 阅读全文
posted @ 2022-11-18 21:45 吴仁耀 阅读(48) 评论(0) 推荐(0)
摘要: 黏包现象 什么是黏包 1.服务端连续执行三次recv(字节数需要大些) import socket server = socket.socket() server.bind(('127.0.0.1', 8081)) server.listen(5) sock, addr = server.accep 阅读全文
posted @ 2022-11-17 22:14 吴仁耀 阅读(46) 评论(0) 推荐(0)
摘要: 传输层之TCP与UDP协议 1.TCP与UDP协议 规定了数据传输所遵循的规则 数据传输能够遵循的协议有很多,TCP和UDP是常见的两个 2.TCP协议 TCP协议 ''' 基于TCP传输数据非常的安全,因为有双向通道 基于TCP传输数据,数据不容易丢失,不容易丢失的原因在于二次确认 每次发送数据都 阅读全文
posted @ 2022-11-16 21:34 吴仁耀 阅读(50) 评论(0) 推荐(0)
摘要: 软件开发架构 什么是软件开发架构 软件开发架构就是在软件项目开始的时候制定的一种规范,这种规范包 括代码运行流程、环节、步骤等 我们在编写项目之前需要遵循的代码层面上的规范 eg:ATM三层架构 选课系统三层架构 c/s架构 Client:客户端 Server:服务端 C/s架构指的是客户端(相当于 阅读全文
posted @ 2022-11-15 15:30 吴仁耀 阅读(97) 评论(0) 推荐(0)
摘要: 单例模式实现的多种方法 方式1:使用类 class C1: __instance = None def __init__(self, name, age): self.name = name self.age = age @classmethod # 使用装饰器,让类加括号调用的时候也可以省略一个参 阅读全文
posted @ 2022-11-09 21:31 吴仁耀 阅读(104) 评论(0) 推荐(0)
摘要: 面向对象的魔法方法 魔法方法:类中定义的双下方法都称为魔法方法 特点:调用时不需要人为调用,只要在特定条件下就会自动触发运行. 例如:双下init创建空对象之后自动触发给对象添加独有的数据 常用魔法方法 1.__init__方法: 在创建一个对象时默认被调用,在开发中,如果希望在创建对象的同时,就设 阅读全文
posted @ 2022-11-08 21:28 吴仁耀 阅读(32) 评论(0) 推荐(0)
摘要: 派生方法 什么是派生: ​ 指的的子类继承父类的属性方法,并且派生 出自己独有的属性与方法 ​ 通过super来指向父类的属性(super()是一 个特殊的类,调用super得到一个对象,该对 象指向父类的名称空间) 实战演练 import json import datetime d = { 't 阅读全文
posted @ 2022-11-07 22:20 吴仁耀 阅读(84) 评论(0) 推荐(0)
摘要: 动静态方法 绑定给对象的方法 直接在类体代码中编写即可,对象调用会自动将对象当作第一个参数传入 class Student: school = '清华大学' def __init__(self,name): self.name = name def run(self): # self用于接受对象 p 阅读全文
posted @ 2022-11-03 15:34 吴仁耀 阅读(40) 评论(0) 推荐(0)
摘要: 面向对象的概念 Python 是一门面向对象的语言, 面向对象是一种抽象,抽象是指用分类的眼光去看世界的一种方法。 用编程思想来说就是:万事万物皆对象。也就是说在面向对象中,把构成问题事务分解成各个对象。 类 类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体被称为类。在pytho 阅读全文
posted @ 2022-11-02 21:35 吴仁耀 阅读(79) 评论(0) 推荐(0)
摘要: ATM +购物车(思路流程) 启动文件 首先,创建一个start.py作为整个项目启动的启动文件 然后导入os和sys模块,从core中导入src,也就是展示给用户看的 在src.py用户视图层中,先写好各个功能函数名,然后创建一个函数功能字典。 然后就是视图层的主程序,打印选择列表让用户选择,根据 阅读全文
posted @ 2022-10-31 16:50 吴仁耀 阅读(77) 评论(0) 推荐(0)
摘要: 正则表达式前戏 正则表达式是用来匹配与查找字符串的,从网上爬取数据自然或多或少会用到正则表达式,python的正则表达式要先引入re模块,正则表达式以r引导 案例:手机号校验 基本要求:手机号必须是11位、手机号必须是 13 15 17 18 19开头、必须是纯数字 '''纯python代码实现'' 阅读全文
posted @ 2022-10-31 01:06 吴仁耀 阅读(45) 评论(0) 推荐(0)
摘要: hashlib加密模块 1.何为加密 将文明数据处理成密文数据 让人无法看懂 2.为什么要加密 保证数据的安全,防止密码泄露 3.如何判断数据是否加密 密文数据的表现形式一般都是一串没有规则的字符串(数字、字母、符号) 4.加密算法 将明文变成密文的内部规则,算法的难易程度可以根据产生密文的长短来判 阅读全文
posted @ 2022-10-27 22:15 吴仁耀 阅读(38) 评论(0) 推荐(0)
摘要: 第三方模块的下载与使用 第三方模块:别人写的模块 一般情况下功能特别强大 想使用第三方模块 必须先下载后面才可以反复使用 方式1: 命令行借助于pip工具 pip3 install 模块名 # 不知道版本默认是最新版 pip3 install 模块名==版本号 # 指定版本下载 pip3 insta 阅读全文
posted @ 2022-10-26 21:33 吴仁耀 阅读(48) 评论(0) 推荐(0)