12 2018 档案
摘要:装饰器 首先说一下装饰器 import time def timer(func): def inner(): start = time.time() func() print(time.time() - start) return inner @timer #==> func1 = timer(fu
阅读全文
摘要:hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。 什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。 摘要算法就是通过摘要函数f()对任意长度的数据dat
阅读全文
摘要:collections模块 在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和OrderedDict等。 1.namedtuple: 生成可以使用名字来访问
阅读全文
摘要:包 包是一种通过使用‘.模块名’来组织python模块名称空间的方式。 1. 无论是import形式还是from...import形式,凡是在导入语句中(而不是在使用时)遇到带点的,都要第一时间提高警觉:这是关于包才有的导入语法 2. 包是目录级的(文件夹级),文件夹是用来组成py文件(包的本质就是
阅读全文
摘要:模块 1 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译为共享库或DLL的C或C++扩展 3 包好一组模块的包 4 使用C编
阅读全文
摘要:isinstance和issubclass isinstance(obj,cls)检查是否obj是否是类 cls 的对象 issubclass(sub, super)检查sub类是否是 super 类的派生类 反射 1 什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问
阅读全文
摘要:面向对象的软件开发 很多人在学完了python的class机制之后,遇到一个生产中的问题,还是会懵逼,这其实太正常了,因为任何程序的开发都是先设计后编程,python的class机制只不过是一种编程方式,如果你硬要拿着class去和你的问题死磕,变得更加懵逼都是分分钟的事,在以前,软件的开发相对简单
阅读全文
摘要:封装 【封装】 隐藏对象的属性和实现细节,仅对外提供公共访问方式。 【好处】 1. 将变化隔离; 2. 便于使用; 3. 提高复用性; 4. 提高安全性; 【封装原则】 1. 将不需要对外提供的内容都隐藏起来; 2. 把属性都隐藏,提供公共方法对其访问。 私有变量和私有方法 在python中用双下划
阅读全文
摘要:多态 什么是多态 多态指的是一类事物有多种形态 动物有多种形态:人,狗,猪 文件有多种形态:文本文件,可执行文件 多态性 一 什么是多态动态绑定(在继承的背景下使用时,有时也称为多态性) 多态性是指在不考虑实例类型的情况下使用实例 鸭子类型 逗比时刻: Python崇尚鸭子类型,即‘如果看起来像、叫
阅读全文
摘要:继承 什么是继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 python中类的继承分为:单继承和多继承 查看继承 提示:如果没有指定基类,python的类会默认继承object类,object是所有python类的基
阅读全文
摘要:面向过程 VS 面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西。 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可。 缺点是:一套流水线或者流程就是用来解决一个问题,代码牵
阅读全文
摘要:递归的定义——在一个函数里再调用这个函数本身 在一个函数里再调用这个函数本身,这种魔性的使用函数的方式就叫做递归。 递归的最大深度——997 正如你们刚刚看到的,递归函数如果不受到外力的阻止会一直执行下去。但是我们之前已经说过关于函数调用的问题,每一次函数调用都会产生一个属于它自己的名称空间,如果一
阅读全文
摘要:Python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?且看下文。 首先,这三种方法都定义在类中。下面我先简单说一下怎么定义和调用的。(PS:实例对象的权限最大。) 实例方法 定义:第一个参数必须是实例对象,该参数名一般约定
阅读全文
摘要:内置函数的内容 https://www.processon.com/view/link/5b4ee15be4b0edb750de96ac 匿名函数 匿名函数:为了解决那些功能很简单的需求而设计的一句话函数 上面是对calc这个匿名函数的分析,下面给出了一个关于匿名函数格式的说明 面试题练一练 现有两
阅读全文
摘要:迭代器 要了解for循环是怎么回事儿,咱们还是要从代码的角度出发。 首先,我们对一个列表进行for循环。 上面这段代码肯定是没有问题的,但是我们换一种情况,来循环一个数字1234试试 看,报错了!报了什么错呢?“TypeError: 'int' object is not iterable”,说in
阅读全文
摘要:1. 动态传参(重点) *, ** *, ** : 形参: 聚合 位置参数* -> 元组 关键字** -> 字典 实参: 打散 列表, 字符串, 元素 -> * 字典 -> ** 形参顺序(重点): 位置, 默认值, *args, **kwargs 无敌传参 def func(*args, **kw
阅读全文
摘要:1.什么是函数 函数是对代码块和功能的封装和定义 2.函数的语法和定义 使用def关键字来定义函数,函数的定义语法是 def 函数名(): 函数体 函数名的命名规则和变量一样 函数体就是函数被执行之后需要执行的代码 函数的调用: 写法:函数名(),这个时候函数的函数体会被执行 3.关于函数的返回值
阅读全文
摘要:编辑类:Ctrl + Space 基本的代码完成(类、方法、属性)Ctrl + Alt + Space 类名完成Ctrl + Shift + Enter 语句完成Ctrl + P 参数信息(在方法中调用参数)Ctrl + Q 快速查看文档Shift + F1 外部文档Ctrl + 鼠标 简介Ctrl
阅读全文
摘要:提示CTRL Q: 在参数列表位置,显示可以输入的所有参数。CTRL Q: 查看选中方法的文档字符串阅读CTRL -: 折叠当前代码CTRL +: 展开当前代码CTRL SHIFT -: 折叠所有代码CTRL SHIFT +: 展开所有代码CTRL SHIFT F7: 将当前单词在整个文件中高亮,F
阅读全文
摘要:1. 文件操作 open 打开 f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes 打开一个文件的时候获取到的是一个文件句柄. 绝对路径 从磁盘根目录开始寻找 相对路径 相对于当前程序所在的文件夹 ../ 上一层文件 文件夹/ 进入xx
阅读全文
摘要:在python中对字符串和列表的操作有很多,今天在使用split操作和remove操作的时候有了新的发现和领悟, 先来说一下split:是字符串一个常用的操作,作用是按照括号内的参数对字符串进行切割,但是如果不填入参数会怎么样 今天无意间尝试了一下,如果没有参数,会按照空格去切然后去掉空字符串,只要
阅读全文
摘要:1. 基础数据类型补充 大多数的基本数据类型的知识.已经学完了 join() "*".join("马虎疼") # 马*虎*疼 把传递进去的参数进行迭代. 获取到的每个元素和前面的*进行拼接. 得到的是字符串 split() 切割. 切割的结果是列表 列表和字典: 都不能在循环的时候直接删除 把要删除
阅读全文
摘要:1. 小数据池, id() 小数据池针对的是: int, str, bool 在py文件中几乎所有的字符串都会缓存. id() 查看变量的内存地址 2. is和==的区别 is 比较的是内存地址 == 比较的是内容 当两个变量指向同一个对象的时候. is是True, ==也是True 3. 再谈编码
阅读全文

浙公网安备 33010602011771号