07 2021 档案

摘要:1、存储引擎 1.什么是存储引擎 就是存储数据的方式 2.如何查看存储引擎? show engines; 3.都有哪些存储引擎? MyISAM InnoDB MEMORY 主要了解这三个 4.MyISAM InnoDB MEMORY有那些区别 MyISAM:mysql5.5版本及之前的版本默认引擎 阅读全文
posted @ 2021-07-27 16:01 zhutianyu 阅读(56) 评论(0) 推荐(0)
摘要:1、Python标准模块——concurrent.futures concurrent.futures模块提供了高度封装的异步调用接口 ThreadPoolExecutor:线程池,提供异步调用 ProcessPoolExecutor:进程池,提供异步调用 2、基本方法 submit(fn, *ar 阅读全文
posted @ 2021-07-23 20:22 zhutianyu 阅读(158) 评论(0) 推荐(0)
摘要:1、为什么要有线程 因为进程虽然有其优点,但也有缺点: 1.进程只能在一个时间干一件事,如果想同时干两件事或多件事,进程就无能为力了。 2.进程在执行的过程中如果阻塞,例如等待输入,整个进程就会挂起,即使进程中有些工作不依赖于输入的数据,也将无法执行。 2、线程的出现 正因为进程的缺点,所以需要解决 阅读全文
posted @ 2021-07-22 18:37 zhutianyu 阅读(72) 评论(0) 推荐(0)
摘要:#进程间通信 IPC(Inter-Process Communication) 1、进程之间数据是隔离的,代码示例如下: from multiprocessing import Process def task(): global n n = 100 print("子进程中:", n) if __n 阅读全文
posted @ 2021-07-21 18:50 zhutianyu 阅读(191) 评论(0) 推荐(0)
摘要:服务端 import socket from multiprocessing import Process def task(sock): # 1024 bytes while True: # 客户端非正常断开,需要捕捉异常 try: data = sock.recv(1024) if len(da 阅读全文
posted @ 2021-07-20 19:13 zhutianyu 阅读(163) 评论(0) 推荐(0)
摘要:1、如何开启进程 开始进程有两种方法: 1.p.start() 2.p.run()调用run方法,不会启动子进程,第二种开启进程的方式,需要用到run方法, 重写run方法 # win中要想开启进程,必须放在main里面 from multiprocessing import Process imp 阅读全文
posted @ 2021-07-20 17:25 zhutianyu 阅读(323) 评论(0) 推荐(0)
摘要:1、什么是并发和并行 并行: 就是在一个精确的时间片刻,两者同时执行 并发: 是指资源有限的情况下,两者交替轮流使用资源,在一个时间段上交替执行,看上去是同时进行 2、并行和并发的区别 并行是从微观上,也就是在一个精确的时间片刻,有不同的程序在执行,这就要求必须有多个处理器。 并发是从宏观上,在一个 阅读全文
posted @ 2021-07-20 16:13 zhutianyu 阅读(328) 评论(0) 推荐(0)
摘要:要想多个进程交替运行,操作系统必须对这些进程进行调度,这个调度也不是随即进行的, 而是需要遵循一定的法则,由此就有了进程的调度算法。有如下四种: 1、先来先服务调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度, 也可用于进程调度。FCFS算法比较有利于长作业(进 阅读全文
posted @ 2021-07-20 15:55 zhutianyu 阅读(549) 评论(0) 推荐(0)
摘要:1、什么是进程 进程是系统进行资源分配和调度的基本单位,是操作系统结构的基础 进程是一个实体,有自己的地址空间 进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时(操作系统执行之),它才能成为一个活动的实体,我们称其为进程。 狭义定义:进程是正在运行的程序的实例 广义定义 阅读全文
posted @ 2021-07-20 15:39 zhutianyu 阅读(55) 评论(0) 推荐(0)
摘要:#socket套接字 1、什么是socket套接字 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式, 它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符 阅读全文
posted @ 2021-07-20 15:24 zhutianyu 阅读(97) 评论(0) 推荐(0)
摘要:#内置函数 str: __str__方法会在对象被打印时自动触发,print功能打印的就是它的返回值, 我们通常基于方法来定制对象的打印信息,该方法必须返回字符串类型 class People: def __init__(self,name,age): self.name=name self.age 阅读全文
posted @ 2021-07-15 17:28 zhutianyu 阅读(56) 评论(0) 推荐(0)
摘要:#Minxins机制 1. 分主类和辅类 继承辅类就有该辅类中的功能, 不影响子类使用 2. 命名方式,以Mixin,able 为结尾, 3. 一般辅类的位置在主类的左边 4.主类功能可以有很多个,辅类可能有一个功能, 一个功能一个辅类,辅类可以有很多个,但主类只能有一个 例如: class Veh 阅读全文
posted @ 2021-07-15 15:52 zhutianyu 阅读(79) 评论(0) 推荐(0)
摘要:#组合 组合:一个对象拥有一个属性,该属性值是另外一个对象 解决类与类之间的冗余问题: 1. 继承: 满足什么是什么的关系 2. 组合: 满足什么有什么的关系 比如bar中有n,但我Foo想调n,这是就用到了组合,obj2赋值给obj1.z,然后obj1就可以调用n class Foo: x = 1 阅读全文
posted @ 2021-07-14 16:14 zhutianyu 阅读(79) 评论(0) 推荐(0)
摘要:#单继承下的属性查找 先从自己的对象里找,找不到到产生对象的类里面找,找不到再到继承的父类找 示例如下: class Foo: def f1(self): print("Foo.f1") def f2(self): print("Foo.f2") self.f1() # self => obj cl 阅读全文
posted @ 2021-07-14 15:09 zhutianyu 阅读(79) 评论(0) 推荐(0)
摘要:#继承 面向对象的三大特征: 1.封装 2.继承 3.多态 1、什么是继承? 继承就是一种新建类的方式, 新建的类我们称为子类或者叫派生类, 被继承的类成为父类或者叫基类 子类可以遗传父类的属性 2、为什么用继承? 类是解决对象与对象之间的代码冗余的 继承是解决类与类之间的代码冗余的 3、如何用继承 阅读全文
posted @ 2021-07-13 16:35 zhutianyu 阅读(71) 评论(0) 推荐(0)
摘要:#property装饰器 property装饰器:将一个函数功能伪装成一个数据属性 版本一: class Foo: def __init__(self, name, age): self.__name = name self.age = age @property def name(self): r 阅读全文
posted @ 2021-07-13 16:24 zhutianyu 阅读(63) 评论(0) 推荐(0)
摘要:#绑定方法 绑定方法分为两种: 1.绑定给对象的 2.绑定给类的 绑定给对象的: class Student(): country = 'CHINA' def __init__(self, name, age): self.name = name self.age = age def tell_in 阅读全文
posted @ 2021-07-13 16:10 zhutianyu 阅读(59) 评论(0) 推荐(0)
摘要:面向对象 1、面向过程编程 1、面向过程是什么 面向过程的程序设计:核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式的思维方式。 2、优缺点: 优点是:复杂度的问题流程化,进而简单化(一个复杂的问题,分成一个个小的步骤去实 阅读全文
posted @ 2021-07-12 15:29 zhutianyu 阅读(145) 评论(0) 推荐(0)
摘要:#模块 1 什么是模块 模块一系列功能的集合体 模块分为四种通用的类别 1 使用python编写的.py文件 2 已被编译为共享库或DLL的C或C++扩展 3 把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包) 4 使用C编写并链接到python解释器的 阅读全文
posted @ 2021-07-05 16:05 zhutianyu 阅读(82) 评论(0) 推荐(0)
摘要:#匿名函数 什么是匿名函数? 匿名函数就是没有名字的函数 为何要用匿名函数? 用于临时使用一次的场景 如何定义匿名函数 lambda 参数 :返回值 有名函数与匿名函数的对比 有名函数:循环使用,保存了名字,通过名字就可以重复引用函数功能 匿名函数:一次性使用,随时随时定义 匿名函数一般与内置函数搭 阅读全文
posted @ 2021-07-05 15:21 zhutianyu 阅读(51) 评论(0) 推荐(0)
摘要:迭代器 1 什么是迭代器 迭代器就是用来迭代取值的工具 什么是迭代? 迭代就是一个重复的过程,但是每次重复都是基于上一次的结果进行的 # 单纯的重复不叫迭代 while True: 1+1 # 下面才是迭代的过程 count = 1 while count < 5: print(count) cou 阅读全文
posted @ 2021-07-02 15:38 zhutianyu 阅读(64) 评论(0) 推荐(0)
摘要:1、什么是装饰器 装饰器是一个用来为被装饰者添加功能的工具 被装饰者:函数 装饰器:可以用函数实现装饰器这种工具 2、为何要用装饰器 为了在不修改被装饰器对象源代码以及调用方式的前提下, 为被装饰对象添加上新功能 3、如何用装饰器 装饰器分为两种: 无参装饰器和有参装饰器 无参装饰器基本步骤: de 阅读全文
posted @ 2021-07-01 15:34 zhutianyu 阅读(109) 评论(0) 推荐(0)