摘要: logging模块 概念: 日志是一种可以追踪某些软件运行时所发生事件的方法。软件开发人员可以向他们的代码中调用日志记录相关的方法来表明发生了某些事情。一个事件可以用一个可包含可选变量数据的消息来描述。此外,事件也有重要性的概念,这个重要性也可以被称为严重性级别(level)。 日志的作用: 程序的 阅读全文
posted @ 2019-08-04 22:33 yangchangjie 阅读(210) 评论(0) 推荐(0)
摘要: 异常 语法错误:空格 缩进 语法规则 逻辑上的错误 写代码实现 1. 条件判断 2. 异常处理 常见的异常 常见的异常 更多的异常 什么是异常 当程序发生错误的时候,错误的程序以后的代码就不会执行。 什么是异常处理? 专门用来捕捉这个异常(这段代码与程序逻辑无关,与异常处理有关),如果捕捉成功则进入 阅读全文
posted @ 2019-08-04 22:26 yangchangjie 阅读(136) 评论(0) 推荐(0)
摘要: \_\_str\_\_和\_\_repr\_\_ 总结: 打印对象 先走自己的str,如果没有,走父类的,如果除了object之外的所有父类都没有str 再回来,找自己的repr,如果自己没有,再找父类的 repr是str的备胎 和所有的字符串格式化以及直接打印这个对象相关 有了repr或者str在 阅读全文
posted @ 2019-08-04 22:25 yangchangjie 阅读(157) 评论(0) 推荐(0)
摘要: isinstance 和 issubclass isinstance(obj,cls)检查是否obj是否是类的cls的对象 isinstance和type区别 issubclass(sub,super)检查sub类是否是super类的派生类 反射 反射的概念是由Smith在1982年首次提出的,主要 阅读全文
posted @ 2019-08-04 22:23 yangchangjie 阅读(128) 评论(0) 推荐(0)
摘要: 封装 假设我们在设计类的时候,有些类的属性,我们不想人让人看见,应该怎么样去做呢? 封装可以分为广义上的封装和狭义上的封装 广义上的封装 : 把方法和属性根据根据类别装到类中 狭义上的封装 : 私有化的方法和属性 方法\静态变量\实例变量(对象属性)都可以私有化 所谓的私有化 : 就是只能在类的内部 阅读全文
posted @ 2019-08-04 22:22 yangchangjie 阅读(204) 评论(0) 推荐(0)
摘要: 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 继承可以分为单继承和多继承 单继承 可以查看继承关系(\_\_bases\_\_) 派生类 当然子类也可以添加自己新的属性或者在自己这里重新定义这些属性(不会影响到父类),需 阅读全文
posted @ 2019-08-04 22:15 yangchangjie 阅读(353) 评论(0) 推荐(0)
摘要: 抽象类 什么是抽象类 与java一样,python也有抽象类的概念但是同样需要借助模块实现,抽象类是一个特殊的类,它的特殊之处在于只能被继承,不能被实例化。抽象类是将一堆的类中抽象抽取相同的内容,其其中包括了数据的属性和函数的属性。 python中实现的抽象的类 看下面的代码: 上述这样调用是没有任 阅读全文
posted @ 2019-08-04 22:04 yangchangjie 阅读(369) 评论(0) 推荐(0)
摘要: 每一个类的继承顺序都是从父类向子类看 形成一个指向关系的顺序[当前类]+[父类的继承顺序] 如果一个类出现在从左到右的第一个顺序上并且没有出现在后面顺序中或者出现在后面的顺序中但是仍然是第一顺序,那么就把这个类提取出来 由上述可以知道B类,C类和D类是单继承,即很容易知道: L(B)= [BFGO] 阅读全文
posted @ 2019-08-04 22:01 yangchangjie 阅读(220) 评论(0) 推荐(0)
摘要: 类的加载顺序 看一下下面的的代码,结果是什么? 执行的结果是: 类内部一个缩进的所有代码都是在py文件从上到下解释的时候就已经被执行了 类中的代码永远是从上到下依次执行的 总结: 类的加载顺序 1.类内部一个缩进的所有代码都是在py文件从上到下解释的时候就已经被执行了 2.类中的代码永远是从上到下依 阅读全文
posted @ 2019-08-04 22:00 yangchangjie 阅读(619) 评论(0) 推荐(0)
摘要: 面向过程Vs面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤。 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可。 缺点是:一套流水线或者流程就是用来解决一个问题,代码牵一发而动全身。 应用场景:一旦完成基本很少改变的场景,著名的例子有Linux 阅读全文
posted @ 2019-08-04 21:50 yangchangjie 阅读(173) 评论(0) 推荐(0)
摘要:   在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和OrderedDict等。 1. namedtuple: 生成可以使用名字来访问元 阅读全文
posted @ 2019-08-04 21:43 yangchangjie 阅读(198) 评论(0) 推荐(0)
摘要: json模块   JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。JSON的数据格式其实就是python里面的字典格式,里面可以包含方括号括起来的数组,也就是python里面的列表。 json中四种方法: dumps 阅读全文
posted @ 2019-08-04 21:40 yangchangjie 阅读(153) 评论(0) 推荐(0)
摘要: 递归,就是在运行的过程中调用自己。 递归必须要有三个要素: ①、边界条件 ②、递归前进段 ③、递归返回段 当边界条件不满足时,递归前进;当边界条件满足时,递归返回。 递归经典的题目求解: n的阶层问题的求解: 阅读全文
posted @ 2019-08-04 21:20 yangchangjie 阅读(239) 评论(0) 推荐(0)
摘要: 字符串、列表、元组、字典、集合都可以被for循环,而int和bool不能被for循环,说明他们是不可迭代的。 怎么样才能给证明,我们知道的数据类型是可迭代的.使用模块collections中的Iterable和isinstance进行类型的判断。 上述就验证了bool和int不是可迭代的对象,其余的 阅读全文
posted @ 2019-08-04 21:17 yangchangjie 阅读(126) 评论(0) 推荐(0)
摘要: python的内置函数包含了68个。它们就是python提供给你直接可以拿来使用的所有函数。 | | | 内置函数 | | | | | | | | | | " " | " " | " " | " " | " " | | " " | " " | " " | " " | " " | | " " | " 阅读全文
posted @ 2019-08-04 21:07 yangchangjie 阅读(199) 评论(0) 推荐(0)
摘要: 1.看程序写结果: 结果: 将它改成我们想要的结果(上述的代码):我们想到的结果是0,2,4 结果是: 阅读全文
posted @ 2019-08-04 20:58 yangchangjie 阅读(116) 评论(0) 推荐(0)
摘要: 闭包函数 内部函数包含对外部作用域而非全剧作用域名字的引用,该内部函数称为闭包函数 我们都知道函数内的变量我们要想在函数外部用,可以直接返回这个变量,那么如果我们想在函数外部调用函数内部的函数呢? 将函数的名字进行返回就好了,则是闭包函数的常见的用法。 闭包函数参数位置的测试 总结: 命名空间: 一 阅读全文
posted @ 2019-08-04 20:55 yangchangjie 阅读(101) 评论(0) 推荐(0)
摘要: 函数外部可以使用函数内部的变量? 代码运行的形式 python解释器开始运行之后,会在内存里面开辟一个空间,每当遇见一个变量的时候,就把变量名和值的对应关系进行记录下来,但是遇见函数的时候,解释器只是象征性的将函数名读到内存中,表示知道这个函数的存在了,至于函数内部的变量和逻辑,解释器根本不关心。 阅读全文
posted @ 2019-08-04 20:44 yangchangjie 阅读(137) 评论(0) 推荐(0)
摘要: 函数的意义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()。自己也可以创建函数,这被叫做用户自定义函数。 函数的定义: def 关键字开头,空格之后接函数的名称和圆括号,最后加上一个" 阅读全文
posted @ 2019-08-04 20:42 yangchangjie 阅读(123) 评论(0) 推荐(0)
摘要: 1.下载Python的各个版本2.x和3.x 下载链接:https://www.python.org/downloads/windows/ 2.解压到不同的路径下,并记录路径 3.环境变量的设置 4.将pyhton2.x改名 5.测试 阅读全文
posted @ 2019-08-04 20:40 yangchangjie 阅读(335) 评论(0) 推荐(0)
摘要: 列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。 列表的操作 增 删 改 查 其他 列表的嵌套 ` T 阅读全文
posted @ 2019-08-04 20:39 yangchangjie 阅读(124) 评论(0) 推荐(0)
摘要: list list to tuple list to str tuple tuple to list tuple to str dict dict to list dict to tuple dict to str str str to list str to tuple str to dict 常 阅读全文
posted @ 2019-08-04 20:37 yangchangjie 阅读(161) 评论(0) 推荐(0)
摘要: 集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的。 集合是可以去除重复的,自动去除重复的元素 关系测试,测试两组数据之前的交集、差集、并集等关系。 创建 增 删 查 集合的其他的操作 阅读全文
posted @ 2019-08-04 20:36 yangchangjie 阅读(143) 评论(0) 推荐(0)
摘要: dict(字典) 字典是python中唯一的映射类型,采用键值对(key value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。 字典的基本操作 阅读全文
posted @ 2019-08-04 20:35 yangchangjie 阅读(188) 评论(0) 推荐(0)
摘要: str.capitalize() 首字母大写 str.casefold() str.center(width[,fillchar]) 按照给定字符和总宽度居中显示。 str.count(sub,start,end) 子字符串在原字符串中的个数。 sub:需要搜索的字符串 字符串开始搜索的范围,默认是 阅读全文
posted @ 2019-08-04 20:34 yangchangjie 阅读(236) 评论(0) 推荐(0)
摘要: 格式化输出 P = A("B", 18) "name is: {p.name}, age is:{p.age}".format(p=P) name is: B, age is:18 ​ 成员运算 | 运算符 | 描述 | 实例 | | | | | | in | 如果在指定的序列中找到值返回 True 阅读全文
posted @ 2019-08-04 20:30 yangchangjie 阅读(273) 评论(0) 推荐(0)
摘要: 电脑的硬件基础 CPU 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。 中央处理器主要包括运算器(算术逻辑运算单元,AL 阅读全文
posted @ 2019-08-04 18:11 yangchangjie 阅读(270) 评论(0) 推荐(0)
摘要:   列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。 列表的操作 增 删 改 查 阅读全文
posted @ 2019-08-04 18:02 yangchangjie 阅读(685) 评论(0) 推荐(0)