随笔 - 89
文章 - 43
评论 - 3
阅读 -
39982
12 2018 档案
进程和并发编程
摘要:一、 操作系统: 一个协调,管理和控制计算机硬件资源的和软件资源的控制程序。操作系统为与计算机硬件和应用软件之间,本质也是一个软件。 操作系统由操作系统的内核(运行与内核态,管理硬件资源)以及系统调用(运行与用户态,为程序员写的应用程序提供系统调用接口)两部分组成。 操作系统功能:1、隐藏了丑陋的硬
阅读全文
黏包
摘要:TCP(transport control protocol,传输控制协议):面向连接的,面向流的,提供可靠的服务。为了高效的发送包,使用了Nagle 算法,将多次间隔较小且数据量小的数据,合并成一个大的数据块进行封包,因此面向流的通信是无消息保护边界的。 UDP(user datagram pro
阅读全文
socket
摘要:Socket: 应用层与TCP/IP协议通信的中间软件抽象层,把复杂的TCP/IP协议隐藏在socket接口后面 也可理解为ip + port , ip用来标识互联网中的一台主机的位置,port用来标识这太计算器上的一个应用程序,ip 地址是配置到网卡上的,port是应用程序开启的,ip与port的
阅读全文
网络编程
摘要:网络编程: 编写一个基于网络才能工作的程序 学习网络编程目的:数据间的交互,利用网络可以访问别人的数据 一 、客户端/服务器架构 (c/s架构) 客户端: 接收数据的一方 (例如:腾讯视频客户端) 服务器:提供数据的一方 (例如腾讯服务端) 浏览器也是客户端 B/S 架构也是C/S 架构的一种 二、
阅读全文
异常处理
摘要:异常处理: 异常: 在程序中,程序正常执行过程按代码顺序一行一行执行,知道结束。若执行过程中出现了错误,导致代码无法执行完毕 即代码执行中出现 错误种类: 1. 语法错误(python解释器在执行代码之前会检查语法错误,如果出现语法错误,不会执行代码) 2. 逻辑错误: 例如用int 函数去转换字母
阅读全文
面向对象高级 之 自动触发的内置函数
摘要:恢复内容开始 一. isinstance(obj, 类) 判断对象是不是某个类的实例 二. issubclass(子类,父类) 判断是否为子类,可以是子子类 三. 反射 当获得了一个对象,但不清楚对象的内部细节,用到反射 1. hasattr : 是否存在某个attribute 2. getattr
阅读全文
面向对象之组合
摘要:面对对象精髓: 将数据和处理数据的方法绑定成一个对象 获得了对象就同时获得了数据和方法 组合: 多个对象放在一起,也可以降低代码冗余。 程序中一个对象将另一个对象作为自己的属性 继承和组合的区别: 继承:是一种类之间的包含关系( 学生 是 人类) 组合:是一种拥有的关系(学生类拥有手机类) 生成一个
阅读全文
面向对象之继承
摘要:继承 是一种关系,必须存在两个对象产生这种关系,继承的一方称之为子,被继承的称为父 通过继承,可以直接使用父类提供的代码 怎样继承:在子类中的类名后面加括号,加上父类名称 例: calss Student(Teacher): python 中一个子类可以有多个父类,用逗号隔开,其他语言不支持多个父类
阅读全文
面向对象
摘要:面向过程 一. 面向过程(一种编程思想) 过程:解决问题的步骤,目的是将一个复杂的问题拆分成若干小问题,按步骤解决,将问题流程化。 优点:复杂问题简单化 缺点:由于实现流程固定,一旦中间某个步骤发生了修改,导致整体需要修改(如果增加新功能,需要全部修改) 扩展性差,维护性差 应用场景:不需要扩展的程
阅读全文
XML模块
摘要:一. XML 模块 是一种定义电子文档结构和描述的语言,可以标记数据,定义数据类型 标记翻译为标签,标签是指某种特殊符号,XML是用标签来定义文档结构 标签的组成:<person name='egon'> hello my friend</person> 1. 标签名: person 2. 属性(a
阅读全文
os模块-subprocess 模块- configpaser 模块
摘要:一. os 模块 主要用于处理与操作系统相关操作,最常用文件操作 使用场景:当需要操作文件及文件夹(增,删,查,改) os.getcwd() 获取当前工作目录 os.chdir('dirname') 改变当前工作目录,相当 shell 下的 cd os.curdir 返回当前目录 (‘ . ’) o
阅读全文
模块之 logging, shelve, sys 模块
摘要:一. logging模块 用来记录日志,日志:记录某个时间点发生了什么事 日志作用:程序调试 了解软件程序的运行情况,是否正常 软件程序运行故障分析与问题定位 还可用来做用户行为分析 日志等级:在不改动应用程序代码的情况下,实现在不同的环境记录不同详细程度的 1. DEBUG=10 最详细的日志,应
阅读全文
hashlib 库
摘要:hashlib 库 hash 是一种算法,用来接收一系列数据,经过计算后得到一个hash值 hash值的三大特征: 1. 如果传入的数据一样,得到的hash值一样 2. 只要采用的hash算法固定,无论传多少内容hash值的长度是固定的 3. hash值不可逆,不能通过hash值倒推出内容 hash
阅读全文
re模块与正则表达式
摘要:import re 一. 正则表达式 具有特殊含义的符号组合到一起叫正则表达式 正则表达式用来描述字符或字符串的方法,通过re模块来实现 \w 字母数字下划线组成 \W 取反,非字母数字下划线组成 \s 空白字符[\t \n \r \f] \S 非空白字符 \d 任意数字 \D 任意非数字 \n 换
阅读全文
包--json 与 pickle 模块
摘要:一. 包 一个含有__init__.py 文件的文件夹(将py 文件中的内容划分成不同的部分放在不同的py 文件中,在将这些py 文件放在一个文件夹中) 是模块,不做执行文件,仅做调用 __init__.py 文件中绝对导入: 从包的顶级目录(aaa)开始查找 __init__.py 文件中相对导入
阅读全文
模块
摘要:一. 模块 指一系列功能的集合体(模块名用小写和下划线组成) 模块的四个通用类别:1.使用python编写的.py 文件 2. 已被编译为共享库或DLL的C 或C++扩展 3. 把一系列模块组织到一起的文件夹 4. 使用c编写并链接到python解释器的内置模块 模块的三个来源: 内置模块 , 第三
阅读全文
叠加多个装饰器,列表生成式,字典生成式,匿名函数
摘要:一. 叠加多个装饰器 1. 加载顺序: (outter 函数的调用顺序): 自下而上 2. 执行顺序: (wrapper函数的调用顺序): 自上而下 二. 三元表达式 三. 列表生成式 & 字典生成式 四. 匿名函数: 只定义了一个函数的内存地址,主要用于临时一次的场景 lambda x,y: x+
阅读全文
函数的递归调用和二分法
摘要:一. 递归调用 在调用一个函数过程中又直接或间接地调用了函数自身 条件: 1. 每进入下一次递归调用,问题的规模都有所减少 2. 递归必须有一个明确的结束条件 阶段: 回溯和递推 二. 二分查找法 在有序排列中找到给定的数,可以将制定的数和有序排列的中间数做比较,若小于中间数,则再与前一半数的中间数
阅读全文
迭代器和生成器
摘要:一. 迭代器:迭代取值的工具 迭代:一个重复的过程,每次重复是基于上一次重复的结果 优点:提供一种不是依赖索引的迭代取值方式(通用方式)// 更节省内存 缺点:只能按顺序依次取值,不如索引取值灵活// 只能 一次性取值,无法预测值的个数 如何用: 可迭代对象:有内置__iter__方法的对象(字符串
阅读全文