摘要: TCP粘包问题 TCP是一种流式协议,数据像水流一样,没有任何边界区分 收数据没有收干净,有残留就会和下一次结果混淆在一起所以解决的方法就是:每次都收拾干净不留任何残留什么是粘包: 首先要强调的一点是粘包指挥在TCP协议传输中出现,而不会在UDP中出现,那么他的原因要从socket收发消息原理说起 阅读全文
posted @ 2020-04-22 21:41 TopJocker 阅读(482) 评论(0) 推荐(0) 编辑
摘要: socket套接字: Socket是应用层与TCPIP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。 也有人说socke 阅读全文
posted @ 2020-04-22 21:38 TopJocker 阅读(227) 评论(0) 推荐(0) 编辑
摘要: socket套接字: Socket是应用层与TCPIP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。 也有人说socke 阅读全文
posted @ 2020-04-20 21:56 TopJocker 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 一 客户端/服务器端架构 CS架构:C客户端 S服务器端 BS架构:B浏览器端 S服务器端二 网络通信原理: 什么是互联网?:想要进行跨距离传输信息是会发生语言不通的情况,那么我们就需要一个统一的语言标准来进行通信, 一系列统一的标准,这些标准称之为互联网协议,互联网的本质就是一系列的协议 互联网协 阅读全文
posted @ 2020-04-18 20:37 TopJocker 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 1.异常处理 异常是程序发生错误的信号,程序一旦出错就会抛出异常,程序的运行随即终止 异常处理的三个特征 1.异常的追踪信息 2.异常类型 3.异常内容 为何要处理异常 为了增强程序的健壮性,即便是程序运行过程中出错了,也不要终止程序,而是捕捉异常并处理,同时记录日志 如何处理异常? 1.语法上的错 阅读全文
posted @ 2020-04-16 22:04 TopJocker 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 反射: 什么是反射?指的是在程序运行过程中可以“动态”获取对象的信息(属性和功能) 为什么用反射?python是动态语言,反射被视为动态语言的关键 如何使用反射? 实现反射机制的步骤: 1.先通过dir查看某一个对象下的属性 2.通过字符串反射到真正的属性上,得到属性值 四个内置函数的使用,通过字符 阅读全文
posted @ 2020-04-15 21:21 TopJocker 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 多继承真正的方式:mixins机制mixins机制核心:就是在多继承背景下尽可能地提升多继承的可读性ps:让多继承满足人的思维习惯=》什么"是"什么补充:通常Mixin结果的类放在左边在子类派生的新方法中如何重用父类功能? 方式一:指名道姓的调用某一个类下的函数,不依赖于继承关系 方式二:super 阅读全文
posted @ 2020-04-11 20:28 TopJocker 阅读(123) 评论(0) 推荐(0) 编辑
摘要: property 是个用类实现的装饰器 由来将绑定给对象的方法伪装成数据属性 使用property有效地保证了属性访问的一致性。另外property还提供设置和删除属性的功能 class People: def __init__(self,name,weight,height): self.name 阅读全文
posted @ 2020-04-09 20:23 TopJocker 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 面向过程编程,面向对象编程,函数式编程只是一种编程范式/思想面向过程 核心是过程二字 构成就是流水线 整个思想本质上就是将程序流程化 优点:将程序流程化进而将程序的设计变得简单化 缺点:可扩展性差面向对象 核心是对象二字 对象就是容器,用来盛放数据与功能 列表 字典 文件 整个思想就是将程序进行高度 阅读全文
posted @ 2020-04-08 22:42 TopJocker 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 一、logging 模块 import logging logging.basicConfig( # 1、日志输出位置:1、终端 2、文件 filename='access.log', # 不指定,默认打印到终端 # 2、日志格式 format='%(asctime)s - %(name)s - % 阅读全文
posted @ 2020-04-01 22:12 TopJocker 阅读(117) 评论(0) 推荐(0) 编辑