自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 2021-04-17

Python知识点补充什么是类和对象type和isinstance的区别is和==的区别深拷贝与浅拷贝类变量和实例变量类查找顺序类方法,静态方法和实例方法类的私有属性参看类的属性的方法super函数with语句Python序列类型分类Extend函数if in 函数bisest 维护处理已排序序列array和list区别列表推导式,生成器推导式,字典推导式dict.formatkeysUserDict经典的传参错误property,settergetattritube 和getattr属性描述符非属性描述符

2021-04-17 14:05:00 573 1

原创 常见的web安全问题 学习笔记

常见的web安全问题常见的安全问题SQL注入与防范防范SQL注入什么是XSSXSS危害防范XSS危害什么CRSFCSRF产生条件如何防范CSRF浏览器SameSite机制 常见的安全问题 SQL注入 XSS(跨站脚本攻击,Cross-Site Scripting) CSRF(跨站请求伪造,Cross-site- request forgery) SQL注入与防范 通过构造特殊的输入参数传入W...

2020-02-22 18:04:34 234

原创 Python WSGI和web框架学习笔记

Python wsgi和web框架什么是WSGIPython Web框架对比什么是MVC模式什么是ORM一个web框架有哪些部分组成什么是Gunicorn 什么是WSGI Python Web Server Gateway Interface(pep3333) 解决Python Web Server 乱象mod_python,CGI,FastCGI等 描述了Web Server(Gunicorn...

2020-02-21 00:51:11 366

原创 缓存机制和Redis基础知识 学习笔记

缓存机制和redis基础什么是缓存,为什么要使用缓存Redis和Memcached区别Redis常用的数据类型Redis内置实现Redis两种持久化方式Redis事务Redis如何实现分布式锁缓存的使用模式如何解决缓存穿透的问题如何解决缓存击穿的问题如何解决缓存雪崩的问题 什么是缓存,为什么要使用缓存 缓存关系数据库(常见的有Mysql)并发访问的压力:热点数据 减少响应时间:内存IO速度比磁盘...

2020-02-21 00:13:27 526

原创 SQL内连接、外连接、全连接 学习笔记

SQL语句编写常用连接内连接外连接全连接 常用连接 内连接(INNER Connect):两个表都存在匹配时,才会返回匹配行 外连接(LEFT/RIGHT JOIN):返回一个表的行,即使另一个没有匹配 全连接(FULL JOIN):只要某一个表存在匹配就返回 内连接 将左边和右表能够关联起来的数据连接后返回 类似于求两个表的“交集” select A.id as a.id, B.id a...

2020-02-20 23:17:10 240

原创 Mysql基础知识和索引 学习笔记

Mysql基础知识mysql基础知识点什么是事务事务的ACID特性事务的并发控制可能产生哪些问题四种事务隔离级别解决高并发场景下插入重复的问题乐观锁和悲观锁MyISAM和InnoDBMysql索引为什么需要索引查找结构的历史什么是B-Tree什么是B+树Mysql创建索引类型什么时候创建索引创建索引有哪些需要注意索引什么时候失效什么是聚集索引和非聚集索引排查慢查询的问题 mysql基础知识点 事...

2020-02-20 22:55:38 334

原创 Python设计模式 学习笔记

Python设计模式①创建型模式工厂模式构造模式原型模式单例模式②结构型模式代理模式适配器模式③行为型模式迭代器模式观察者模式策略模式 ①创建型模式 常见创建型设计模式 工厂模式(Factory):解决对象创建问题 构造模式(Bulider):控制复杂的对象创建 原型模式(Prototype):通过原型的克隆创建新的实例 单例模式(Singletion):一个类只能创建一个对象 对象池模式(Po...

2020-02-20 00:24:42 431

原创 计算机网络基础知识 学习笔记

网络协议TCP/UDP从浏览器输入一个url中间经历的进程TCP三次握手TCP状态幂等和安全性tcp 怎么保证数据包有序tcp 和 udp 的异同tcp 怎么保证可靠性tcp中拥塞避免和流量控制机制tcp四次挥手的详细解释四次挥手之后为什么还要等待2msl滑动窗口机制的原理和理解什么是长链接cookie和session的区别 从浏览器输入一个url中间经历的进程 中间涉及了那些过程 包含了那些网...

2020-02-17 17:23:36 3404 1

原创 操作系统内存管理机制和Python垃圾回收机制 学习笔记

操作系统内存管理机制和Python垃圾回收机制什么是分页机制什么是分段机制分段和分页的区别什么是虚拟内存什么是内存抖动Python垃圾回收机制原理 什么是分页机制 逻辑地址和物理地址分离的内存分配管理方案 程序的逻辑地址划分固定大小的页 物理地址划分为同样大小的帧 通过页表和对应逻辑地址和物理地址 什么是分段机制 分段是为了满足代码的一些逻辑需求 数据共享、数据保护、动态链接 通过短标来对应...

2020-02-13 18:41:13 485

原创 操作系统线程和进程 学习笔记

操作系统线程和进程进程和线程对比什么是线程安全如何保证线程安全进程间通信方式 进程和线程对比 进程是对运行时程序的封装,是系统调度资源的分配的基本单位 线程是进程的子任务,cpu调度和分配的基本单位,实现进程内的并发 一个进程可以包含多个线程,线程依赖进程存在,并共享进程内存 什么是线程安全 如何保证线程安全 互斥量(锁),通过互斥机制防止多个线程同时访问公共资源 信号量(Semphare)...

2020-02-13 17:49:00 865

原创 Linux常用命令 学习笔记

Linux常用命令查询linux命令的用法常见文件操作工具文件查看常见的进程操作工具常见的内存操作工具常见的网络工具常见的用户和组操作 查询linux命令的用法 使用man命令查询用法,但是man手册比较晦涩 使用工具自带的help,比如pip --help man工具替代工具tldr,pip install tldr 常见文件操作工具 chown/chmod/chgrp ls/rm/cd/...

2020-02-13 17:01:48 510

原创 Python装饰器 学习笔记

Python装饰器什么是装饰器思考题:如何给类写装饰器 什么是装饰器 Python中一切皆对象,函数也可以当做参数传递 装饰器接受函数当做参数,添加功能后返回一个新函数的函数 Python中装饰器使用@ import time def log_time(func): def log(*args, **kwargs): begin = time.time() ...

2020-02-12 16:25:14 232

原创 Python面对对象编程基础 学习笔记

Python面对对象编程基础什么是面向对象编程什么是类变量和实例变量classmethod和staticmethod区别什么是元类?应用场景是什么? 什么是面向对象编程 把对象作为基本单位,把对象抽象为类,包含成员和方法 数据封装、继承、多态(可覆盖父对象方法) Python中使用类实现。过称式编程(函数),OOP(类) 什么是类变量和实例变量 类变量由所有实例共享 实例变量有实例单独享有,...

2020-02-12 15:50:11 247

原创 Python实现常用排序算法 学习笔记

Python实现常用排序算法排序算法中的稳定性快排归并排序冒泡排序选择排序 排序算法中的稳定性 相同的大小的元素在排序完成后相对位置没有发生改变,就是稳定的 稳定性对于排序一个复杂结构,并且需要保持原有的排序才有意义 快排 选择基准分割数组为两个字数组,小于基准和大于基准 对两个子数组排序 合并 时间复杂度 O(N*logN),空间使用了递归,O(logN) 不稳定 data = [2,4...

2020-02-11 22:21:05 371

原创 Python内置数据结构和算法 学习笔记

Python内置数据结构和算法Python中collections模块提供的一些内置数据结构拓展Python dict底层结构Python中list/tuple区别 Python中collections模块提供的一些内置数据结构拓展 注:有空看看源码实现原理 nametuple()(创建命名元组子类的工厂函数) deque类似列表(list)的容器,实现了在两端快速添加(append)和弹出(p...

2020-02-10 21:54:27 238

原创 Python生成器和协程 学习笔记

Python生成器和协程什么是生成器基于生成器的协程 什么是生成器 可以生成值的函数 当一个函数有了yield关键字就成了生成器 可以挂起执行并保持当前执行状态的 def my_gen(): yield 'first' yield 'second' gen = my_gen() print(next(gen)) print(next(gen)) 基于生成器的协程 注:Pyt...

2020-02-10 20:19:43 205

原创 Python性能分析与优化,GIL 学习笔记

Python性能分析与优化,GIL什么是CPython GTLGIL的影响如何规避GIL影响Python什么操作才是原子的?一步执行完服务端性能优化 什么是CPython GTL CPython解释器内存管理并不是是线程安全的 保护多线程情况下对Python对象的访问 CPython使用简单的锁机制避免了多个线程同时执行字节码 GIL的影响 同一时间只有一个线程执行字节码 CPU密集程序(大...

2020-02-10 17:13:51 378

原创 Python异常机制机制 学习笔记

Python异常机制机制Python使用异常处理错误Python使用异常的常见场景Python处理异常模板:Python如何自定义异常 Python使用异常处理错误 BaseException SystemExit/Keyboard/Interrupt/GeneratorExit Exception 此链接python官方文档底部有异常等级图看参考 Python使用异常的常见场景 网络请求(...

2020-02-10 15:52:04 143

原创 Python2/Python3区别 学习笔记

Python2/Python3区别Python3的改进Python新增 Python3的改进 print成为了函数,在python2中是关键字,函数就可以传递参数(如换行符、分隔符) 编码问题。Python3不再有unicode对象,默认str就是unicode python的除法会返回浮点数 类型注释(type hint),方便IDE实现类型检查 优化super()方便直接调用父函数 高级解包...

2020-02-10 01:28:03 209

原创 Python语言基础 学习笔记

Python语言基础Python是什么类型的英语为什么使用Python语言什么是鸭子类型什么是monkey patch什么是自省 Python是什么类型的英语 答:动态强类型语言,静态语言是指代码在编译的时候变量数据类型是确定的,动态语言是指运行后变量数据类型是确定。弱类型是指不同类型进行运算时候,会进行隐式转换,而强类型偏向不容忍隐式类型转换。如Python中 1 + ”1“会报错,而在js中不...

2020-02-09 21:33:19 477

原创 Python深入理解② 魔法函数(学习笔记)

Python深入理解① 魔法函数什么是魔法函数常见魔法函数 什么是魔法函数 以__开头和__结尾的函数 如:def __init__ 系统内设,对象的属性功能,在相应语法调用时会触发,如使用下标 class Nums(object): def __init__(self, nums): self.nums = nums # 当下标函数调用时触发 # ...

2020-02-09 19:59:31 198

原创 Python深入理解① 一切皆对象(学习笔记)

Python深入理解① 一切皆对象静态语言与动态语言函数和类也是对象Type、Object、Class的关系Python中常见的内置变量 静态语言与动态语言 静态语言:代码在编译的时候变量数据类型确定的,大部分静态语言在编写的过程中就要定义好数据类型 动态语言:代码是运行的时候变量数据类型确定的,变量可直接赋值而不用定义类型 静态语言优势:可以很容易看出,静态语言由于数据类型是定死的,使得它的优势...

2020-02-03 14:04:01 331

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除