TreeMind树图在线AI思维导图
当前位置:树图思维导图模板行业/职业模板其他python学习重点框架思维导图

python学习重点框架思维导图

  收藏
  分享
免费下载
免费使用文件
衑紆 浏览量:212022-07-01 20:45:37
已被使用1次
查看详情python学习重点框架思维导图

python学习框架分为继承、多态、文件操作、线程、进程、协程、正则表达式与加密。

树图思维导图提供 python学习重点框架思维导图 在线思维导图免费制作,点击“编辑”按钮,可对 python学习重点框架思维导图  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:5a222f51f399e5331ac59b773055cf13

思维导图大纲

python思维导图模板大纲

继承

单继承

class 类名(父类名): 代码

子类继承父类之后可以直接使用

对象名.方法名()

多继承

class 类名(父类名1, 父类名2..): 代码

有重复的,先继承谁就用谁的

__mro__

使用

类名.__mro__

查看继承的顺序

重写

子类继承父类之后可以重新定义并覆盖父类的方法

子类添加功能

父类名.方法名(self)

super().方法名()

super(子类名,self).方法名()

封装

在方法或属性前加(__)两个下划线

成为私有属性或私有方法

私有属性

外部无法访问,内部可以访问

self.私有属性

私有方法

外部无法访问,内部可以访问

类名.私有方法(self)

self.私有方法()

多态

同一种事物的多种形态

静态方法

@staticmethod

类中的函数,不需要实例话对象就可以直接调用类中的函数

访问类属性

类名.属性名

不能访问实例属性

类方法

@classmethod

定义完类方法之后,再定义的函数括号内是【(cls)/类对象】

调用

使用类名直接调用

类名.类方法()

使用类对象调用

先实例化对象 然后用对象名.方法名()

不能访问实例属性

访问类属性

类对象.类属性

实例方法

访问实例属性

self.实例属性

访问类属性

类名/self.类属性名

文件操作

打开文件

open('文件路径','打开模式')

打开模式不填,默认只读

返回文件的路径/名称

文件名.name

返回文件的访问模式

文件名.mode

返回文件的编码格式

文件名.encoding

读取数据

文件名.read(num)

num表示读取的长度 不填读取全部

文件名.readline()

一次读取一行内容

文件名.readlines()

一次性读完

写入内容

文件名.write(‘ 给一个 ’)

关闭文件

文件名.close()

查看是否关闭

文件名.closed

访问模式(mode)

r

只读

不存在报错

w

只写

不存在新建,存在重写

a

追加可写

不存在新建,存在在内容后填写

+

可读可写

r+ w+ a+

可读可写

rb wb ab

以二进制打开文件

更加节省空间

文件名.tell()

文件名.seek(偏移量,起始位置)

起始位置

0

文件开头

1

当前位置

2

文件结尾

with表达式

with open(文件路径, mode,encoding=‘ 编码格式 ’) as 别名:

此表达式会自动调用close()

编码格式在不符合的情况下才使用

线程

单线程

程序一个一个的运行

多线程

多个程序同时运行

多线程的实现

导入模块

threading

创建子线程

Thread类

语法:模块名.Thread

Thread([group[,targe[,name[,args[,kwargs]]]]])

group

线程组,目前只能使用None

target

执行的目标任务名

name

线程名,一般不用设置

args

以元组方式给执行任务传参

kwargs

以字典方式给执行任务传参

守护线程

setDaemon()

子线程名字.setDaemon(False)

默认关闭,需要开启

daemon

子线程名.daemon=True

强制结束子线程,主线程结束的时候,子线程也跟着结束

开启子线程

start()

子线程名.start()

阻塞主线程

join()

子线程名.start()

表示让当前子线程先运行,阻塞主线程

加锁

创建锁

lock = lock()

上锁

lock.acquire()

在函数内部的开头位置

释放锁

lock.release()

在函数内部结尾的位置

注意

线程共享全局变量(资源共享)

加锁是把多任务转换成单任务,谁先抢到执行谁

进程

进程的状态

就绪态

代码已经写好,等待运行

运行态

代码正在运行中

阻塞态

代码处于等待状态

休眠

input()

查看子进程的名字

子进程名.name

修改子进程名字

 使用Process中的name修改

子进程名.name = ‘修改的名字’

进程号

目的

验证主进程和子进程的关系,知道子进程由哪个主进程创建出来的

语法

子进程名.pid

查看子进程号

导入系统模块os

os.getpid()

查看子进程号

os.getppid()

查看父进程号

进程的使用

start()

启动进程

is_alive()

判断进程是否活着

活着返回True

死亡返回False

join()

主进程等待子进程运行

进程通信

Queue

是类中的模块

使用时需要初始化对象

变量名 = Queue()

括号内为可以接受的数量,不填无限接受

变量名来调用

qsize()

返回当前队列包含的消息数量

empty()

如果队列为空,返回True

full

如果队列为满,返回True

put()

放入数据

get()

取出数据

Queue本身是一个消息列队程序

通过创建一个列队对象来进行传参到函数中 从而实现进程之间的资源共享

进程池

语法

导入类的模块

注意

子进程一般都在主进程后面执行

查看进程命令

tasklist

进入命令提示符输入并回车

子进程id不同,父进程id相同

进程之间不共享全局变量(资源不共享)

协程

手动切换

1. 导入模块

greenlet

由于是第三方模块,所以需要下载

在pycharm中

file--setting--project--‘+’--输入模块名--install package

文件下方 Termianl--输入 pip install 模块名

命令提示符cmd

pip install 模块名

查看已下载的模块

命令提示符cmd

pip list

2. 实例化协程对象

greenlet(任务名)

3. 调用函数

对象名.switch()

switch() 协程切换

传参

args

以元组的形式传参

kwargs

以字典的形式传参

自动切换

1. 导入gevent 模块

同上

2. 实例化协程对象   需要调用spawn()函数

模块名.spawn(任务名)

3. 调用函数

调用join()函数

对象名.join()

需要打补丁

导入模块 monkey

语法: monkey.patch_all()

注意要放在被打补丁的前面

使用模块中自带的 sleep()

gevent.sleep()

调用joinall()

gevent.joinall([对象名, 对象名])

正则表达式

概念:

正则表达就是记录文本规则的代码

语法

语法1

导入 re 模块

使用方法进行操作

使用match方法进行操作

match方法匹配时是从头开始匹配的

match('匹配的正则表达式' , '要匹配的字符串','标志位')

标志位是匹配类型,一般不用管

匹配成功,返回匹配的数据 匹配失败,返回None

使用search方法进行操作

扫描整个字符串,找到第一个匹配成功的数据

search('匹配的正则表达式' , '要匹配的字符串','标志位')

使用group方法提取数据

对象名.group()

匹配失败时,不能提取数据

语法2

导入 re 模块

使用 findall方法

扫描整个字符串,找出所有符合匹配的字符串

findall('匹配的正则表达式' , '要匹配的字符串','标志位')

打印对象名

匹配单个字符

.

匹配任意一个字符,除了\n

[  ]

匹配[ ]中列举的一个字符

\d

匹配数字,0 -- 9

\D

匹配非数字,不是数字的

\s

匹配空格

\S

匹配非空格

\w

匹配单词字符,【a -- z 】 【A -- Z】【0 -- 9】 【  _  】 【汉字】

\W

匹配非单词字符

匹配多个字符

修饰单个字符

*

匹配前一个字符出现0次或无限次

+

匹配前一个字符出现1次或无限次

匹配前一个字符出现0次或无限次

{ m }

匹配前一个字符出现m次

{ m,n }

匹配前一个字符出现从m到n次

注意

匹配前一个字符意思是,所修饰的单个字符

匹配开头和结尾

^

匹配字符串以什么开头

$

匹配字符串以什么结尾

[^指定字符]

除了指定字符以外都匹配

匹配分组

|

表示左右的任意一边字符

(ab)

将括号中字符作为一个分组

\num

引用分组

有重复的时候使用,从内到外逐渐减少

了解

(?P<别名>)正则表达式

(?P=name)

引用

匹配

贪婪匹配

在满足匹配时,尽可能多的匹配

非贪婪匹配

在满足匹配时,尽可能少的匹配

使用问号表示非贪婪匹配

在正则表达式后面作修饰

加密

encode()

加密

decode()

解密

相关思维导图模板

机器学习模型应用思维导图

树图思维导图提供 机器学习模型应用 在线思维导图免费制作,点击“编辑”按钮,可对 机器学习模型应用  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:c352eb5b9d3a7b5f25c0443976095fde

雅思阅读技巧思维导图

树图思维导图提供 雅思阅读技巧 在线思维导图免费制作,点击“编辑”按钮,可对 雅思阅读技巧  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:3ca29ca0c4f5ba64fc346f362180532f