01 2020 档案
摘要:一、内置函数(内建函数)built in functions与魔法方法(特殊方法)magic method(special method)的区别 内置函数(内建函数) 内建函数(内建是相对于导入import来说的)是指python内部自带的函数,不需要导入外部包即可实现的函数,比如 len(),ab
阅读全文
摘要:一、 程序使用 属性既可查看对象的所有内部状态,也可通过字典语法来访问或修改指定属性的值。 由此可见, 类的静态函数、类函数、普通函数、全局变量以及一些内置的属性都是放在类 里的 对象的 中存储了一些self.xxx的一些东西
阅读全文
摘要:一、绑定方法 1.对象的绑定方法 首先我们明确一个知识点,凡是类中的方法或函数,默认情况下都是绑定给对象使用的。下面,我们通过实例,来慢慢解析绑定方法的应用。 从上面的输出结果来看,talk()这个类的方法,是绑定给对象使用的。下面,我在看看另外一种情况。 现在,我们将talk()函数的参数去掉,结
阅读全文
摘要:一、封装的意义 封装不是单纯意义的隐藏 1.封装数据 主要原因是:保护私隐,明确区分内外。将数据隐藏起来这不是目的。隐藏起来然后对外提供操作该数据的接口,然后我们可以在接口附加上对该数据操作的限制,以此完成对数据属性操作的严格控制。 2.封装方法 目的是隔离复杂度 在编程语言里,对外提供的接口(接口
阅读全文
摘要:一、多态 Python中多态是指一类事物有多种形态。比如动物有多种形态,人,狗,猫,等等。文件有多种形态:文本文件,可执行文件。 二、多态性 1.什么是多态性? 多态性是指在不考虑实例类型的情况下使用实例,多态性分为静态多态性和动态多态性 静态多态性:如任何类型都可以用运算符+进行运算 动态多态性:
阅读全文
摘要:继承的两种用途: 1.继承基类的方法,并且做出自己的改变或者扩展(代码复用) 2.声明某个子类兼容于某基类,定义一个接口类Interface,接口类中定义了一些接口名(就是函数名)且并未实现 接口的功能,子类继承接口类,并且实现接口中的功能。 一、什么是抽象类 与java一样,python也有抽象类
阅读全文
摘要:一、组合 代码复用的重要的方式除了继承,还有组合。 组合,在一个类中以另一个类的对象作为数据属性,称为类的组合。 二、组合和继承的使用场景 继承的方式 通过继承建立了派生类与基类之间的关系,它是一种'是'的关系,比如白马是马,人是动物。 组合的方式 用组合的方式建立了类与组合的类之间的关系,它是一种
阅读全文
摘要:子类也可以添加自己新的属性或者在自己这里重新定义这些属性(不会影响到父类),需要一旦重新定义了自己的属性且与父类重名,那么调用新增的属性时,就以自己为准。 派生就是子类在继承父类的基础上衍生出新的属性。子类中独有的,父类中没有的;或子类定义与父类重名的东西。子类也叫派生类。 class Hero:
阅读全文
摘要:一、什么叫继承 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类又可称为基类或超 类,新建的类称为派生类或子类。子类会“”遗传”父类的属性,从而解决代码重用问题。 单继承与多继承 经典类与新式类 只有在python2中才分新式类和经典类,python3中统一都
阅读全文
摘要:一、装饰器的功能 针对软件开发的“开放 封闭”原则,即: 封闭:已实现的功能代码块不应该被修改 开放:对现有功能的扩展开放 所谓的装饰器,就是通过装饰器函数,来修改原函数的一些功能,使得原函数不需要修改。 二、装饰器引入 1.原有的功能函数如下: 2.现需要对两个功能函数进行权限验证,即需要引入一个
阅读全文
摘要:正则表达式(Regular Expression)用于描述一种字符串匹配的模式,它可用于检查一个字符串是否含有某个子串,也可用于从字符串中提取匹配的子串,或者对字符串中匹配的子串执行替换操作。 这个模块提供了与 Perl 语言类似的正则表达式匹配操作。 一、修饰符/Flags标志符 re.I(re.
阅读全文
摘要:一、哈希 1. 什么是可哈希(hashable) 简要的说,可哈希的数据类型,即不可变的数据结构(字符串str、元组tuple、对象集objects)。 2. 哈希有什么作用 它是一个将大体量数据转化为很小数据的过程,甚至可以仅仅是一个数字,以便我们可以用在固定的时间复杂度下查询它,所以,哈希对高效
阅读全文
摘要:一、什么叫序列化 序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。 二、序列化pickle模块 pickle模块是做什么用的 用来存取结构化数据。 用于python特有的类型和python的数据类型间进行转换
阅读全文
摘要:一、什么是迭代器 迭代是Python最强大的功能之一,是访问集合元素的一种方式。 迭代器是一个可以记住遍历的位置的对象。 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 二、可迭代对象 以直接作用于 for 循环的数据类型有以下几种: 一类是集合数据类型,
阅读全文
摘要:一、生成器概念 Python使用生成器对延迟操作提供了支持。所谓延迟操作,是指在需要的时候才产生结果,而不是立即产生结果。主要有两种结构可以延迟结果创建。生成器函数和生成器表达式。 1.生成器函数 和其他函数编写方式相同,但是使用yield语句一次返回一个结果,在每个结果之间挂起当前状态,下次调用的
阅读全文
摘要:a = [i for i in range(10)] b = range(10) print(a) print(type(a)) print(b) print(type(b)) ''' [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] <class 'list'> range(0, 10
阅读全文
摘要:一、条件 1 在一个外函数中定义了一个内函数。 2 内函数里运用了外函数的临时变量。 3 并且外函数的返回值是内函数的引用。 一般情况下,如果一个函数结束,函数的内部所有东西都会释放掉,还给内存,局部变量都会消失。但是闭包是一种特殊情况,如果外函数在结束的时候发现有自己的临时变量将来会在内部函数中用
阅读全文
摘要:一、namespace 在 Python 中,名字是一个字符串对象,它与它指向的对象构成一个{name:object}关联。 也可以把一个namespace理解为一个字典。 二、作用域 Python 中name-object的关联存储在不同的作用域中,各个不同的作用域是相互独立的。 而我们就在不同的
阅读全文
摘要:一、map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。 map(function, iterable, ...) function 函数 iterable 一个或多个
阅读全文
摘要:一个函数可以接收另一个函数作为参数,这种函数就称之为高阶函数。 注:函数本身也可以赋值给变量,即变量可以指向函数
阅读全文
摘要:lambda函数的语法只包含一个语句,如下: lambda arg1,arg2,……argn:expression 关键字lambda表示匿名函数,匿名函数不需要return来返回值,表达式本身结果就是返回值。 与内置函数map连用:
阅读全文
摘要:一、全局变量与局部变量 在函数中定义的变量为局部变量,在程序中一开始定义的变量为全局变量; 全局变量作用域是整个程序,局部变量作用域是定义该变量的函数; 当全局变量与局部变量同名时,在定义局部变量的函数内,局部变量起作用,在其他地方,全局变量起作用。 二、嵌套函数 在函数里面还可以定义函数,可以嵌套
阅读全文
摘要:一、形参与实参 1.形参 只在函数内部有效。在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。 2.实参 可以是常量,变量,表达式,函数等,无论实参是哪种类型的量,在进行函数调用时,都必须有确定的值。 二、位置参数 调用函数时,必须将函数调用中的每个实参都关联到函数定义中的一个形参。
阅读全文
摘要:一、编码与解码 1.编码 str.encode(encoding='UTF-8',errors='strict'),返回编码之后的字节串。 s = '你好世界' s_utf8 = s.encode('utf-8') print(s_utf8) b'\xe4\xbd\xa0\xe5\xa5\xbd\x
阅读全文
摘要:一、基本操作 基于字符的读取(r),写入(w)与追加(a) 1.mode='r' f = open(file='文件读取.txt', mode='r') print(f.read()) 2.mode='w' f = open(file='文件写入.txt', mode='w') f.write('彩
阅读全文
摘要:集合中的元素有三个特征: 1.互异性:由不同元素组成 2.无序性:如集合{3,4,5}和集合{3,5,4}算作同一个集合 3.集合中的元素必须是不可变类型(可hash) 一、集合的定义 1.集合的去重效果 2.定义可变集合(注意集合具有无序性) 3.定义不可变集合frozenset 二、集合的关系运
阅读全文
摘要:一、Python 字典(Dictionary) fromkeys()方法 用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值,返回一个新字典。 seq = ('Google', 'Runoob', 'Taobao') dict = dict.fromkeys(
阅读全文
摘要:一、列表 列表可修改指定索引对应的值,可变。 常用方法 list.append(obj) 在列表末尾添加新的对象 list.count(obj) 统计某个元素在列表中出现的次数 list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) list.index
阅读全文
摘要:一、基础知识 在python中,加了引号的字符均被认为是字符串。单双引号没有任何区别,但要考虑字符串内含有引号的配合情况,多行字符串必须用多引号。 二、字符串常用函数 1.合并字符串之join()与format() join():用于将序列中的元素以指定的字符连接生成一个新的字符串。 l = ['a
阅读全文
摘要:一、逻辑运算符 and:x and y,布尔"与" -> 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 or:x or y,布尔"或"-> 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 not:not x,布尔"非" -> 如果 x 为
阅读全文
摘要:一、整型 python3里不再有long类型,全部都是int类型。如果整数发生溢出,python会自动将整数数据转换为长整数(没有限制数值大小,但实际上由于机器内存有限,不可能无限大。) bool类型:布尔类型是整型的子类,只有True和False两个值。 布尔值为FALSE的情况:None,Fal
阅读全文
摘要:一、变量 变量即把程序运算的中间结果临时存到内存里,以备后续调用。 1.定义规则 a)变量名只能是字母、数字或下划线的任意组合 b)变量名的第一个字符不能是数字 c)关键字不能声明为变量名 2.定义方式 驼峰体:NumberOfStudents 下划线:number_of_students(官方推荐
阅读全文
摘要:一、编程语言 编程语言总体分为机器语言、汇编语言与高级语言。 1.机器语言 计算机内部只能接受二进制代码,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言,用机器语言编程的程序称为目标程序。只有目标程序才能被计算机直接识别和执行。 机器语言依赖于具体机种,局限性很大,
阅读全文


浙公网安备 33010602011771号