随笔分类 - Python
摘要:包和模块、import 简单的说,Python 中一个 以 .py 结尾的 Python 文件,就是一个模块(Module),包含了 Python 对象定义和 Python 语句。 包就是文件夹,但该文件夹下必须存在 __init__.py 文件, 该文件的内容可以为空。__init__.py 用于
阅读全文
摘要:Python中的多进程 Unix和Linux操作系统上提供了fork()系统调用来创建进程,调用fork()函数的是父进程,创建出的是子进程,子进程是父进程的一个拷贝,但是子进程拥有自己的PID。fork()函数非常特殊它会返回两次,父进程中可以通过fork()函数的返回值得到子进程的PID,而子进
阅读全文
摘要:面向对象的三大特征:继承、封装和多态 封装:把内容封装到某个地方,便于后面使用; 对于封装,其实就是使用初始化构造方法将内容封装到对象中,然后通过对象直接或者self来获取被封装的内容; 继承:儿子可以继承父亲的内容【属性和行为】(爸爸有的儿子都有,但是儿子有的爸爸不一定有); 多态:定义时的类型和
阅读全文
摘要:可迭代对象和迭代器 迭代(iterate)意味着重复,就像 for 循环迭代序列和字典那样,但实际上也可使用 for 循环迭代其他对象:实现了方法 __iter__ 的对象(迭代器协议的基础)。 __iter__方法返回一个迭代器,它是包含方法 __next__ 的对象,调用时可不提供任何参数; 当
阅读全文
摘要:1.定义 在函数内部再定义一个函数,并且这个函数用到了外部函数的变量(LEGB),最后返回新建函数的函数名索引,那么将这样的能够访问其定义时所在的作用域的函数以及用到的一些变量称之为闭包。被引用的非全局变量也称为自由变量 。这个自由变量保存在外部函数的只读属性 __closure__ 中,会与内层函
阅读全文
摘要:1.装饰器的使用 当你希望给一个函数前后永久性地增加新功能,又不想修改原代码时可以使用装饰器。[或者是希望对不同的函数前后添加一致的功能时]函数和新功能都可以变。 2.与闭包的区分 pass 3.装饰器工作原理 装饰器其实只是嵌套函数的一种应用。它们封装一个函数,并且用这样或者那样的方式来修改它的行
阅读全文
摘要:单例模式的几种实现方式 先来看几个魔法方法的简单运用:__new__, __init__, __call__。 class A(object): def __init__(self, x): print('x in __init__', x) def __new__(cls, y): # 它只取下
阅读全文
摘要:垃圾回收 首先介绍两个画图的工具:objgraph 包和在线绘图网站 draw.io。具体的使用以后再写。 1.引用计数 Python 中,每个对象都有存有指向该对象的引用总数,即:引用计数(reference count); 可以使用 sys 包中的 getrefcount(),来查看某个对象的引
阅读全文
摘要:[TOC] ##### 前言 当前测试版本:Python3.7.5;代码前的`>>>`符号,表示代码输入环境是在CMD中,没有就是编辑器中输入。现在我们先来看几段实验代码: ```python >>> a1 = 1000 >>> b1 = 1000 >>> a1 is b1 # False a1 =
阅读全文
浙公网安备 33010602011771号