08 2019 档案

摘要:[TOC] 第十一章、特性property 一、property是一种特殊的属性,访问它时会执行一段功能(函数)然后返回值 例一:BMI指数(bmi是计算而来的,但很明显它听起来像是一个属性而非方法,如果我们将其做成一个属性,更便于理解) 成人的BMI数值: 过轻:低于18.5 正常:18.5 23 阅读全文
posted @ 2019-08-28 23:14 得淼 阅读(227) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、类的封装 一、引子 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,还有alex一起装进麻袋,然后把麻袋封上口子。照这种逻辑看,封装=‘隐藏’,这种理解是相当片面的 二、如何隐藏 \ 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) 这 阅读全文
posted @ 2019-08-28 23:02 得淼 阅读(185) 评论(0) 推荐(0)
摘要:[TOC] 第十一章 面向对象之类的组合 一、什么是组合 组合就是一个类的对象具备某一个属性,这个属性的值是另外一个类的对象 二、为什么用组合 组合是用来解决类与类之间的代码冗余的问题 需求:假如我们需要给学生增添课程属性,但是又不是所有的老男孩学生一进学校就有课程属性,课程属性是学生来老男孩后选出 阅读全文
posted @ 2019-08-28 18:05 得淼 阅读(144) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、面向对象之多态、多态性 一、多态 多态指的是一类事物有多种形态 动物有多种形态:人、狗、猪 文件有多种形态:文本文件、可执行文件 二、多态性 在面向对象方法中一般是这样表示多态性:向不同的对象发送同一条消息(obj.func():是调用了obj的方法func,又称为向obj发送 阅读全文
posted @ 2019-08-28 16:02 得淼 阅读(166) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、super()详解 一、引出super()来由 原始用法: 在python类的方法中,要调用父类的某个方法,通常是 使用非绑定的类方法(用类名来引用的方法),并在参数列表引入待绑定的对象self,达到调用父类方法的目的。 缺点: 这样做的缺点是,当一个子类的父类发生变化时(如类 阅读全文
posted @ 2019-08-27 21:40 得淼 阅读(170) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2019-08-27 19:14 得淼 阅读(112) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、菱形继承问题 一、菱形继承问题 1.1 多层继承 1.2 多继承 1.3 多继承的多层继承 引用:属性查找顺序中 ​ 对象自身——》子类——》父类(多继承)——》报错 而多继承的多层继承模型对经典类和新式类来说,属性的查找顺序是 不同 的,称为菱形继承问题。现在我们分别看一下 阅读全文
posted @ 2019-08-27 17:16 得淼 阅读(211) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、类的继承 一、什么是继承 继承是一种新建类的 方式 ,新建的类称为 子类 ,被继承的类称为 父类 继承的特性:子类遗传父类的属性和函数 二、为什么要继承 可以减少代码的冗余 三、对象的继承 python可以一个类同时继承多个父类 在Python3中如果一个类没有继承任何类,则默 阅读全文
posted @ 2019-08-27 16:56 得淼 阅读(163) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、对象属性查找顺序与属性和方法 一、属性查找 对象自身——》子类——》父类(多继承)——》报错 二、对象赋属性 方式一:给自己对象加一个属性 方拾二:\_\_init\_\_()方法内赋值 方式三:对象.方法 三、绑定方法 定义在类内部的方法 类来调用的话,就是普通函数,有几个参 阅读全文
posted @ 2019-08-27 16:38 得淼 阅读(298) 评论(0) 推荐(0)
摘要:[TOC] 一、类和数据类型 一、类 python3统一了类与类型的概念,类就是类型 lis和lis2都是实例化的对象,因此lis使用append方法和lis2无关 二、解析list.append()方法 1 choosing course 1 choosing course [1, 2, 3, 4 阅读全文
posted @ 2019-08-26 16:55 得淼 阅读(182) 评论(0) 推荐(0)
摘要:[TOC] 第十一章、定制对象独有特征 一、引入 对于上述的学生类,如果类的属性改了,则其他对象的属性也会随之改变 二、定制对象独有特征 对象本质类似于类,也是一个名称空间,但是对象的名称空间存放对象独有的名字,而类中存放的是对象们共有的名字。因此我们可以直接为对象单独定制名字。 三、类定义阶段定制 阅读全文
posted @ 2019-08-26 16:06 得淼 阅读(124) 评论(0) 推荐(0)
摘要:[TOC] 一、面向过程和面向对象 1. 面向过程: 缺点:拓展性差 优点:复杂的问题流程化、进而简单化 2. 面向对象对象编程 缺点:编程复杂度高于面向过程 优点:可拓展性高 二、类和对象 1. 类和对象 类(class): 相当于施工图纸(blueprint)(包括属性和函数) 对象(objec 阅读全文
posted @ 2019-08-26 15:35 得淼 阅读(130) 评论(0) 推荐(0)
摘要:[TOC] 第十章、collections 一、OrderedDict方法 使用dict时,Key是无序的。在对dict做迭代时,我们无法确定Key的顺序。 如果要保持Key的顺序,可以用OrderedDict: 阅读全文
posted @ 2019-08-24 17:28 得淼 阅读(138) 评论(0) 推荐(0)
摘要:[TOC] 第十章、jupyter入门之pandas 一、什么是pandas pandas是基于numpy的一种工具,这个工具是为了解决数据分析任务而创建的 pandas纳入利润大量库及标准的数据类型,提供了高效的操作的大型的数据集所需要的工具 pandas提供了大量能使我们快捷的处理数据的函数与方 阅读全文
posted @ 2019-08-22 23:03 得淼 阅读(1085) 评论(0) 推荐(0)
摘要:[TOC] 第十章、numpy模块 一、导入方式 二、作用 数组或矩阵的运算 1. numpy数组 三维数组不用numpy模块,用 TensorFlow、pytorch模块 2. 属性 | 属性 | 解释 | | | | | T | 数组的转置(也就是行和列互换) | | dtype | 数组元素的 阅读全文
posted @ 2019-08-20 21:24 得淼 阅读(204) 评论(0) 推荐(0)
摘要:[TOC] 第十章、logging模块 一、logging模块及日志框架 1. 导入方式 2. 作用 写日志 3. 模块功能 4. 日志框架 直接复制这段代码到py文件里,自己导入一下,然后看这块代码 别的文件里调用这个函数,引用内部函数,调整一下自己想要的格式,信息就能用了,不用看里面具体做什么 阅读全文
posted @ 2019-08-20 20:21 得淼 阅读(160) 评论(0) 推荐(0)
摘要:[TOC] 第十章、typing模块 一、说明 二、typing模块的作用 1. 类型检查,防止运行的时候出现参数和返回值类型不符合 2. 可以作为开发文档附加说明,方便使用者调用时传入和返回参数类型 3. 加入模块不会影响运行,不会报错,只是提醒,具有规范提醒的作用 三、使用typing模块 在传 阅读全文
posted @ 2019-08-20 20:12 得淼 阅读(174) 评论(0) 推荐(0)
摘要:[TOC] 第十章、hashlib模块和hmac模块 一、hashlib模块 hash是一种算法,接收传入的内容,经过运算得到的一串hash值 hash的特点: 1. 具有唯一性 2. 安全性,可以用于保存非明文密码 3. 无论传入的什么内容,返回的hash值长度都是固定的 二、hash模块 hma 阅读全文
posted @ 2019-08-19 17:10 得淼 阅读(133) 评论(0) 推荐(0)
摘要:[TOC] 第十章、json和pickle模块 一、序列化 把对象(变量)从内存中变成可存储或传输的过程称之为序列化, 序列化优点: 1. 持久保存状态: 内存本身无法保存数据的,当运行了一段时间,我们断电或者重启程序,内存关于这个程序之前的一段时间的数据都被清空了。但是断电或者重启程序之前将程序当 阅读全文
posted @ 2019-08-19 16:44 得淼 阅读(140) 评论(0) 推荐(0)
摘要:[TOC] 第十章、sys模块 | 方法 | 详解 | | | | | sys.argv | 命令行参数List,第一个元素是程序本身路径 | | sys.modules.keys() | 返回所有已经导入的模块列表 | | sys.exc_info() | 获取当前正在处理的异常类,exc_typ 阅读全文
posted @ 2019-08-19 16:03 得淼 阅读(136) 评论(0) 推荐(0)
摘要:[TOC] 第十章、os模块 一、os模块 | 方法 | 详解 | | | | | os.getcwd() | 获取当前工作目录,即当前python脚本工作的目录路径 | | os.chdir("dirname") | 改变当前脚本工作目录;相当于shell下cd | | os.curdir | 返 阅读全文
posted @ 2019-08-19 16:02 得淼 阅读(122) 评论(0) 推荐(0)
摘要:[TOC] 第十章、random模块 阅读全文
posted @ 2019-08-19 15:27 得淼 阅读(109) 评论(0) 推荐(0)
摘要:[TOC] 第十章、datetime模块 一、datetime 模块 阅读全文
posted @ 2019-08-19 15:13 得淼 阅读(111) 评论(0) 推荐(0)
摘要:[TOC] 第十章、模块 1. time模块 2. 时间戳 表示:是从1970年1月1日00:00:00开始按秒计算的偏移量。 3. 格式化时间 表示:格式化的时间字符串 4. 结构化时间 表示:struct_time元组共有9个元素共九个元素,分别为(年,月,日,时,分,秒,一年中第几周,一年中第 阅读全文
posted @ 2019-08-19 15:03 得淼 阅读(118) 评论(0) 推荐(0)
摘要:[TOC] 第九章、包 一、什么是包 包就是模块的一种形式,包的本质就是含有.py文件的文件夹,还有\_\_init\_\_文件,必须有这个文件,否则就是普通的文件夹 二、为什么要有包 ​ 模块的第一个版本只有10个功能,但是未来在扩展版本的时候,模块名和用法应该最好不要去修改,但是这只是对使用者友 阅读全文
posted @ 2019-08-16 21:47 得淼 阅读(103) 评论(0) 推荐(0)
摘要:[TOC] 第九章、python文件的两种用途 一、用途 当前运行的文件(脚本) 被导入的文件(模块) 说明: 如果直接运行run.py会直接运行aaa.py中的 和`f2() if __name__ == '__main__': f1() f2() __name__ == '__main__' _ 阅读全文
posted @ 2019-08-16 21:13 得淼 阅读(147) 评论(0) 推荐(0)
摘要:[TOC] 第九章、模块的循环导入问题及模块的路径搜索 一、模块的循环导入问题 1. 什么是循环导入 两个模块互相导入,形成导入循环 2. 问题 如果运行m1.py,则会产生 如果运行m2.py,则会产生 3. 解决方案 : 1. 方案一:导入模块语句放在函数里,只要函数调用就可以运行执行导入 2. 阅读全文
posted @ 2019-08-16 20:59 得淼 阅读(133) 评论(0) 推荐(0)
摘要:[TOC] 第九章、import 和from ...import 一、import和 from ...import ... 把python看做手机,pip看做应用管家,第三方库里的模块就是应用管家里面的一个应用。import和 from ...import就是python导入使用模块的过程 二、im 阅读全文
posted @ 2019-08-16 20:38 得淼 阅读(417) 评论(0) 推荐(0)
摘要:[TOC] 第九章、模块的四种形式 一、什么是模块 函数是某个功能的集合体,然后模块是一些功能的集合体,所以模块可以看成一堆函数的集合体。一个py文件内部可以放一堆函数,所以,一个py文件可以看成一个模块。如果py文件的名字叫ypp,模块名就叫ypp 二、模块的四种形式 1. 自定义模块 自己写py 阅读全文
posted @ 2019-08-15 19:18 得淼 阅读(270) 评论(0) 推荐(0)
摘要:[TOC] 第八章、函数递归与面向过程编程 一、什么是函数递归 递归就是函数调用函数本身,然后必须有结束条件,否则报错达到最大深度 while和递归类似,区别在于递归有递进和回归,而while有来无回 递归更多地是思想,他是用来解决某种问题的,比如汉诺塔问题 (虽然我到现在也没搞懂) 二、为什么要用 阅读全文
posted @ 2019-08-15 19:00 得淼 阅读(138) 评论(0) 推荐(0)
摘要:[TOC] 第八章、生成器 一、什么是生成器 生成器本质是迭代器,不仅仅是迭代器,除了迭代器的作用其他作用也没多少,生成器提供了方便的自定义迭代器的途径。 二、yield关键字 迭代器具有 h和 的方法 然后我们看return和yield有什么区别吧 然后总结一下: yield的三个特性 1. yi 阅读全文
posted @ 2019-08-14 15:50 得淼 阅读(167) 评论(0) 推荐(0)
摘要:[TOC] 第八章、函数进阶之字典生成式与匿名函数 一、 字典生成式一般与zip连用 二、匿名函数 1. 什么是函数 匿名函数就是没有名字的函数,使用一次就会被回收,加括号就可以运行 2. 与内置函数连用 ​ storted():对容器进行从小到大排序 salary_list_dict = {'ta 阅读全文
posted @ 2019-08-13 22:09 得淼 阅读(187) 评论(0) 推荐(0)
摘要:[TOC] 第八章、函数进阶之三元表达式 三元表达式 列表推导式 阅读全文
posted @ 2019-08-13 21:19 得淼 阅读(207) 评论(0) 推荐(0)
摘要:第八章、函数进阶之迭代器03 1. 什么是迭代 迭代更新换代,基于上一次的结果退出下一次的结果 2.可迭代对象 具有__iter__()方法的就是可迭代对象,除了数字类型和函数类型都是可迭代对象 x = 1 # 不可迭代对象 s = 'jiayi' # 可迭代对象 lt = [1, 2, 3] # 阅读全文
posted @ 2019-08-12 18:45 得淼 阅读(119) 评论(0) 推荐(0)
摘要:[TOC] 第八章、函数进阶之装饰器02 一、无参装饰器 1. 什么是装饰器? 装饰器指的是为被装饰对象添加功能,因此定义装饰器就是定义一个函数,只不过是该函数是用来为其他函数添加额外的功能 注意 : 装饰器本身是可以任意调用的对象 被装饰的对象也可以是任意可调用了的对象 2. 为什么要用装饰器 装 阅读全文
posted @ 2019-08-12 17:25 得淼 阅读(150) 评论(0) 推荐(0)
摘要:[TOC] 第八章、函数进阶之闭包函数01 回顾 : 函数对象:可以将定义在函数内的函数返回到全局使用,打破了函数的层级限制 名称空间与作用域:作用域关系在函数定义阶段就已经固定死了,与调用位置无关,在任意位置调用函数都需要跑到定义函数时找到作用域关系 一、什么是闭包 闭包 :函数内部函数对外部作用 阅读全文
posted @ 2019-08-12 15:12 得淼 阅读(142) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之名称空间和作用域 说明:函数内部的函数只能在函数内调用,不能在函数外部调用 一、名称空间 内存有一块内存存储变量名与变量间的绑定关系的空间,这个空间就叫做名称空间 1. 1内置名称空间 内置名称空间:存放py解释器自带的名字,如 2. 2全局名称空间 全局名称空间:除了 阅读全文
posted @ 2019-08-11 17:08 得淼 阅读(108) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之函数嵌套 一、函数的嵌套定义 函数内部定义的函数,无法在函数调用内部定义的函数 二、函数的嵌套的调用 三、练习 `circle(10): 314.1592653589793 circle(10,action='perimeter'): 62.83185307179586 阅读全文
posted @ 2019-08-11 16:09 得淼 阅读(163) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之函数对象08 一、函数对象的功能 1. 引用 2. 当做参数传给一个函数 3. 可以当做函数的返回值 4. 可以当做容器类型的元素 二、练习 阅读全文
posted @ 2019-08-11 15:43 得淼 阅读(115) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之可变长参数 一、可变长形参之 形参中的 会将溢出的位置实参全部接收,然后存储元组的形式,然后把元组赋值给\ 后的参数 注意 :约定俗成参数名为 args 二、可变长实参之 实参中的 ,\ 会将\ 后的值循环取出,打散成位置实参。以后碰到实参带\ 的,它就是位置实参,应该 阅读全文
posted @ 2019-08-11 15:30 得淼 阅读(172) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之函数的参数 一、形参和实参 在函数定义阶段括号定义的参数,叫做形式参数,简称形参,本质就是变量名 在函数调用阶段括号内传入的参数,叫做实参,本质就是变量的值 二、位置参数 在函数定义阶段内,按照从左到右的顺序依次定义的形参,叫做位置形参 特点 :按照位置定义的形参,都必 阅读全文
posted @ 2019-08-11 14:59 得淼 阅读(203) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之函数的调用05 一、什么是函数调用? 就会调用函数,会执行函数体代码,直到碰到return或者完函数体所有代码 运行完函数体内代码,如果没有return就会返回none 二、函数调用的三种形式 阅读全文
posted @ 2019-08-11 14:32 得淼 阅读(116) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之函数的返回值04 一、什么是返回值 函数内部代码经过一些列逻辑处理获得的结果。 二、为什么要有返回值 如果需要在程序中拿到函数的处理结果做进一步的处理,则需要函数必须要有返回值 注意 : return是函数结束的标志 return的返回值可以返回任意数据类型 retur 阅读全文
posted @ 2019-08-11 14:21 得淼 阅读(136) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数基础之定义函数的三种方式03 一、无参函数 定义函数时参数是函数体接收外部传值的一种媒介 在函数阶段括号没有参数就是无参函数。调用时不需要传入实参 如果函数体代码逻辑不需要依赖外部传入值,必须定义成无参函数 二、有参函数 在函数阶段括号有参数就是有参函数。调用时需要传入实参 阅读全文
posted @ 2019-08-11 14:13 得淼 阅读(155) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数的基础02 一、函数的定义 定义:在程序中,函数就好比某个功能的工具,准备工具就是定义了函数,遇到应用场景拿来用就是函数的调用 二、为何用函数 解决以下三个问题: 1. 程序冗余 2. 长须的拓展性差 3. 程序的可读性差 三、如何用函数 先定义,后调用 定义函数 函数定义阶 阅读全文
posted @ 2019-08-11 14:05 得淼 阅读(133) 评论(0) 推荐(0)
摘要:[TOC] 第七章、函数的基础之函数体系 一、函数体系 1. 什么是函数 2. 为什么要用函数 3. 函数的分类 4. 怎么定义函数 语法 定义有参数的函数,以及有参函数的应用场景 定义无参数函数,以及无惨的应用场景 定义空函数以及空函数的应用场景 5. 调用函数 如何调用 函数的返回值 函数参数的 阅读全文
posted @ 2019-08-11 13:54 得淼 阅读(187) 评论(0) 推荐(0)
摘要:[TOC] 第六篇、文件处理之文件修改的两种方式 说明 文件的数据是存放在硬盘上的,所以只能覆盖,不能直接修改,平时看到的修改文件都是障眼法的效果,具体的两种实现方式 方式一 将硬盘里的文件全部加载到内存里,内存是可以直接修改的,修改完了后,再由内存覆盖到硬盘里 方式二 将硬盘存放的文件一行行的读到 阅读全文
posted @ 2019-08-08 20:40 得淼 阅读(237) 评论(0) 推荐(0)
摘要:[TOC] 第六篇、文件处理之文件的高级应用 一、可读可写 r+:在后面追加 w+:清空文件的功能是w提供的 更加慎用 a+:a有追加的功能,指针在文件的末尾,没啥用 二、文件内指针移动 需要对文件内的指针移动的操作才能对文件的内容进行修改 硬盘上没有修改的说法,硬盘只能覆盖,新内容覆盖旧内容 三、 阅读全文
posted @ 2019-08-08 16:54 得淼 阅读(295) 评论(0) 推荐(0)
摘要:[TOC] python2和3字符编码的区别 一、字符编码应用之python 1. 1执行python的三个阶段 执行的时候第一步是把文件从硬盘读到内存里 test.py是以gbk格式保存的 阶段一:启动py解释器 阶段二:py解释器此时就是一个文本编辑器,负责打开文件test.py,就是把文件从硬 阅读全文
posted @ 2019-08-08 15:27 得淼 阅读(204) 评论(0) 推荐(0)
摘要:[toc] 第六篇、文件处理之字符编码 一、计算机基础 二、文本编辑器存取文件的处理 1. 打开编辑器就打开了一个进程,而这个进程是运行在内存里的,编写的数据也是存在内存里的,所以断电后数据消失 2. 要保存数据就要点击保存按钮,然后才能把数据刷到硬盘里,这样数据就永久保存了 3. 编写py文件的时 阅读全文
posted @ 2019-08-07 21:53 得淼 阅读(180) 评论(0) 推荐(0)
摘要:[TOC] 第五篇python进阶之深浅拷贝 一、引言 1.1可变 和不可变 id不变 值可以变 即为可变数据类型;值变id也变,即为不可变数据类型 二、拷贝(只针对可变数据类型) 如果l2是l1的拷贝对象,则l1内的任何数据类型的元素发生变化,l2内部也会相应的改变 个人觉得l1和l2共享着同一个 阅读全文
posted @ 2019-08-07 21:09 得淼 阅读(177) 评论(0) 推荐(0)