08 2019 档案

摘要:类和对象的绑定方法和非绑定方法 类中定义的方法大致可以分为两类:绑定方法和非绑定方法。其中绑定方法又可以分为绑定到对象的方法和绑定到类的方法。 绑定方法,主要的特殊之处,绑定给谁就是谁来调用,并且会把自身(对象self)传过来 类的绑定方法:绑定给类的,类来调用,会把类自身传递过来 一、绑定方法 1 阅读全文
posted @ 2019-08-29 15:43 RandySun 阅读(419) 评论(0) 推荐(0)
摘要:封装 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,一起装进麻袋,然后把麻袋封上口子。但其实这种理解相当片面 一、什么是封装 你钱包的有多少钱(数据的封装) 你的性取向(数据的封装) 你撒尿的具体功能是怎么实现的(方法的封装) 二、为什么要封装 封装数据的主要原因是:保护隐 阅读全文
posted @ 2019-08-28 22:40 RandySun 阅读(194) 评论(0) 推荐(0)
摘要:多态 一、什么是多态性 多态指的是一类事物有多种形态, (一个抽象类有多个子类,因而多态的概念依赖于继承) 1. 序列数据类型有多种形态:字符串,列表,元组 2. 动物有多种形态:人,狗,猪 注意:多态与多态性是两种概念 多态性是指具有不同功能的函数可以使用相同的函数名 , 这样就可以用一个函数名调 阅读全文
posted @ 2019-08-28 22:39 RandySun 阅读(228) 评论(0) 推荐(0)
摘要:组合 一、什么是组合 组合就是一个类的对象具备某一个属性,该属性的值是指向另外一个类的对象(对象的某个属性是另一个类的对象) 二、为什么用组合 组合是用来解决类与类之间代码冗余的问题(减少代码的冗余) 首先我们先写一个简单版的选课系统 简单化 如上设计了一个选课系统,但是这个选课系统在未来一定是要修 阅读全文
posted @ 2019-08-28 22:34 RandySun 阅读(219) 评论(0) 推荐(0)
摘要:继承特性 一、什么是继承 继承是一种新建类的方式,继承了一个类,类中的属性和方法就在子类中,类主要分为:父类/基类,子类/派生类 新式类 经典类 没有继承object的类,就是经典类,python3中没有经典类,python2中才有 {'__module__': '__main__', '__doc 阅读全文
posted @ 2019-08-27 20:22 RandySun 阅读(871) 评论(0) 推荐(0)
摘要:对象属性查找顺序 一、属性查找 先从对象自己的名称空间找,没有则去类中找,如果类也没有则报错 0 1 2 3 laowang 3 3 3 1 1 1 {'name': 'laowang', 'age': 18, 'sex': 'male', 'num': 1} {'name': 'xulou', ' 阅读全文
posted @ 2019-08-26 19:40 RandySun 阅读(405) 评论(0) 推荐(0)
摘要:类和对象 一、类和对象 类的意思:种类、分类类别 对象是特征与技能的结合体,我可能有身高体重、而你也有身高体重,所以你会说你像我,但是你一定不会说你像阿猫阿狗。并且我和你其实就可以说成是一类,而你和选课系统不能说是一类,因此给出类的定义:类就是一系列对象相似的特征与技能的结合体。 在现实世界中:先有 阅读全文
posted @ 2019-08-26 19:39 RandySun 阅读(314) 评论(0) 推荐(0)
摘要:定制对象独有特征 [TOC] 类中定义的函数是类的函数属性,类可以使用,但使用的就是一个普通的函数而已,意味着需要完全遵循函数的参数规则,该传几个值就传几个 一、引入 对于上述的学生类,如果类的属性(school)改了,则其他对象的属性也会随之改变 fudan hnnu 二、定制对象独有特征 {} 阅读全文
posted @ 2019-08-26 19:39 RandySun 阅读(260) 评论(0) 推荐(0)
摘要:面向对象编程介绍 一、面向过程编程 面向过程变成的核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么然后干什么…… 基于面向过程编程的思想编写程序好比在设计一条流水线,是一种机械式的思维方式。 优点:复杂的问题流程化、进而简单化 缺点:扩展性差 二、面向对象编程 你可以把你自己想象成如来佛 阅读全文
posted @ 2019-08-26 19:38 RandySun 阅读(203) 评论(0) 推荐(0)
摘要:面向对象程序设计的由来 一、概述 1.1 1940年以前:面向机器 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数 据。简单来说,就是直接编写 0 和 1 的序列来代表程序语言。例如:使用 0000 代表 加载(LOAD),0001 代表 存储(STORE 阅读全文
posted @ 2019-08-26 19:37 RandySun 阅读(650) 评论(0) 推荐(0)
摘要:第一篇 计算机基础 "[01] 计算机操作系统的发展史" "[02] 计算机操作系统" "[03] Windows和Linux文件系统" 第二篇 Linux系统的安装 "[04] Ubuntu系统安装" "[05] Ubuntu图形界面入门" 第三篇 Linux常用命令的基本使用 "[6] Linu 阅读全文
posted @ 2019-08-23 23:59 RandySun 阅读(511) 评论(0) 推荐(0)
摘要:一、numpy简介 numpy官方文档:https://docs.scipy.org/doc/numpy/reference/?v=20190307135750 numpy是Python的一种开源的数值计算扩展库。这种库可用来存储和处理大型numpy数组,比Python自身的嵌套列表结构要高效的多( 阅读全文
posted @ 2019-08-19 19:18 RandySun 阅读(469) 评论(0) 推荐(0)
摘要:json模块和pickle模块 一、json模块 作用:用python写了一个程序,用java写了一门程序,这两个程序需要数据之间交流,就产生了一种多种语言通用的数据类型,json串。 序列化:把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,在其他语言中 阅读全文
posted @ 2019-08-17 12:10 RandySun 阅读(270) 评论(1) 推荐(0)
摘要:hmac模块和hashlib模块 一、hash是什么 ​ hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1、SHA224、SHA256、SHA384、SHA512、MD5 算法),该算法接受传入的内容,经过运算得到一串hash值。 ha 阅读全文
posted @ 2019-08-17 12:10 RandySun 阅读(160) 评论(0) 推荐(0)
摘要:logging模块 一、低配logging 日志总共分为以下五个级别,这个五个级别自下而上进行匹配 debug info warning error critical,默认最低级别为warning级别。 1.1 v1 v1版本无法指定日志的级别;无法指定日志的格式;只能往屏幕打印,无法写入文件。因此 阅读全文
posted @ 2019-08-17 12:10 RandySun 阅读(213) 评论(0) 推荐(0)
摘要:sys模块 sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境。 作用:sys模块与python解释器交互 1. sys.path 2. 添加环境变量sys.path.append() 3. sys.argv 4. 打印模块 | 方法 | 详解 阅读全文
posted @ 2019-08-17 12:09 RandySun 阅读(254) 评论(0) 推荐(0)
摘要:datetime模块 1. 返回当前时间 2019 08 16 19:33:39.557899 2. 延迟更改时间 2019 08 19 19:33:39.557899 2019 08 16 19:33:39.557899 2019 08 19 22:33:39.557899 2019 08 19 阅读全文
posted @ 2019-08-17 12:08 RandySun 阅读(147) 评论(0) 推荐(0)
摘要:os模块 一、os模块 os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口,多用于文件处理。 作用 os模块: 与操作系统交互, 可以操控文件 1. 获取当前文件目录 2. 创建文件夹 3. 删除文件夹 4. 列出所有文件 5. 重命名 6. 删除文件 7. \_\_file\_\_ 结 阅读全文
posted @ 2019-08-17 12:08 RandySun 阅读(227) 评论(0) 推荐(0)
摘要:time模块 time模块:支持三种不同形式的时间,不同形式的时间之间可以转换 一、时间戳模块 时间戳(timestamp):时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。 1552551519.291029 二、格式化时间 格式化的时间字符串(format string) 阅读全文
posted @ 2019-08-17 12:07 RandySun 阅读(200) 评论(0) 推荐(0)
摘要:包 一、什么是包? 包是模块的一种形式,包的本质就是一个含有 的文件的文件夹。 二、为什么要有包? 模块的第一个版本只有10个功能,但是未来在扩展版本的时候,模块名和用法应该最好不要去修改,但是这只是对使用者友好,而由于版本扩展,文件越来越大,模块设计者对模块的管理、维护会越来越复杂,因此我们可以使 阅读全文
posted @ 2019-08-17 12:06 RandySun 阅读(171) 评论(0) 推荐(0)
摘要:random模块 一、常用方法 1. 大于0且小于1之间的小数[0,1) 0.42866657593385415 2. 大于等于1且小于等于3之间的整数 3 3. 打乱l的顺序,相当于"洗牌" [9, 1, 5, 7, 3] 二、不常用方法 1. 大于等于1且小于3之间的整数 2. 列表内的任意一个 阅读全文
posted @ 2019-08-15 19:29 RandySun 阅读(179) 评论(0) 推荐(0)
摘要:循环导入问题 一、什么是循环导入 1. 创建m2的名称空间 2. 执行m2.py,将执行产生的名字丢到m2.py 3. 在当前执行文件中拿到m2.y 1. 创建m1的名称空间 2. 执行m1.py,将执行产生的名字丢到m1.py 3. 在当前执行文件中拿到m1.x 1. 创建m1的名称空间 2. 执 阅读全文
posted @ 2019-08-15 19:26 RandySun 阅读(270) 评论(0) 推荐(0)
摘要:模块的搜索路径 一、模块搜索路径的顺序 模块其实就是一个文件,如果要执行文件,首先就需要找到模块的路径(某个文件夹)。如果模块的文件路径和执行文件不在同一个文件目录下,我们就需要指定模块的路径。 模块的搜索路径指的就是在导入模块时需要检索的文件夹。 导入模块时查找模块的顺序是: 1. 先从内存中,已 阅读全文
posted @ 2019-08-15 19:26 RandySun 阅读(237) 评论(0) 推荐(0)
摘要:import 和from…import 一、import模块名 import首次导入模块发生了3件事: 使用import time导入的时候,使用方法只能通过time.方法名() ,不能直接方法名 1. 在内存中生成一个叫做time的名称空间 2. 将会运行time.py文件,然后把time.py文 阅读全文
posted @ 2019-08-15 19:25 RandySun 阅读(425) 评论(2) 推荐(0)
摘要:模块四种形式 一、什么是模块 模块是一系列功能的集合体,而函数是某一个功能的集合体,因此模块可以看成是一堆函数的集合体。一个py文件内部就可以放一堆函数,因此一个py文件就可以看成一个模块。如果这个py文件的文件名为 module.py ,模块名则为 module 二、模块四种形式 在Python中 阅读全文
posted @ 2019-08-15 19:23 RandySun 阅读(366) 评论(0) 推荐(0)
摘要:面向过程编程 一、面向过程编程 面向过程编程是解决问题的一种思想,相当于武林门派,武林门派之间没有好坏之分,因此它与我们之后学习的面向对象编程其实没有好坏之分。 面向过程编程,核心是编程二字,过程指的是解决问题的步骤,即先干什么、后干什么、再干什么、然后干什么…… 基于该思想编写程序就好比在设计一条 阅读全文
posted @ 2019-08-14 16:24 RandySun 阅读(225) 评论(0) 推荐(0)
摘要:内置函数 一、内置函数 更多内置函数:https://docs.python.org/3/library/functions.html?highlight=built ascii 一、内置函数 更多内置函数:https://docs.python.org/3/library/functions.ht 阅读全文
posted @ 2019-08-14 16:24 RandySun 阅读(162) 评论(0) 推荐(0)
摘要:递归 一、什么是递归 函数的嵌套调用是:函数嵌套函数。函数的递归调用:它是一种特殊的嵌套调用,但是它在调用一个函数的过程中,又直接或间接地调用了它自身,并且要又退出函数的条件(递归: 函数A调用函数A)。 如果递归函数不断地调用函数自身,那么这个递归函数将会进入一个死循环,因此我们应该给递归函数一个 阅读全文
posted @ 2019-08-14 16:23 RandySun 阅读(173) 评论(0) 推荐(0)
摘要:函数综合应用 一、三元表达式 二、列表生成式 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 下面只是秀操作,不推荐使用,否则只有你自己看得懂了。 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 三、字典生成式 a 1 b 2 c 3 d 4 {'a': 1, 'b': 阅读全文
posted @ 2019-08-14 16:22 RandySun 阅读(283) 评论(0) 推荐(0)
摘要:可迭代对象和迭代器 一、迭代器的概念 迭代器即迭代的工具,那什么是迭代呢? 迭代是一个重复的过程,每次重复即一次迭代,并且每次迭代的结果都是下一次迭代的初始值 可迭代的对象:Python内置str、list、tuple、dict、set、file都是可迭代对象,除了数字类型外。 特点: 内置有 方法 阅读全文
posted @ 2019-08-12 16:52 RandySun 阅读(259) 评论(0) 推荐(0)
摘要:装饰器 一、无参装饰器 1.1 什么是装饰器? 装饰器,器指的是工具,二而程序中的函数就是具备某一功能的工具,所以装饰器指的是为被装饰器对象(函数)添加额外功能。因此定义装饰器就是定义一个函数,只不过该函数的功能是用来为其他函数添加额外的功能 装饰器本质就是一个函数A,装饰的对象也是一个函数B,用一 阅读全文
posted @ 2019-08-12 16:51 RandySun 阅读(232) 评论(0) 推荐(0)
摘要:闭包函数 函数对象:可以将定义在函数内的函数返回到全局使用,从而打破函数的层级限制。 名称空间与作用域:作用域关系在函数定义阶段时就已经固定死了,与调用位置无关,即在任意位置调用函数都需要跑到定义函数时找到作用域关系。 一、什么是闭包 闭包:闭是封闭(函数内部函数),包是包含(该内部函数对外部作用域 阅读全文
posted @ 2019-08-12 16:49 RandySun 阅读(376) 评论(0) 推荐(0)
摘要:名称空间和作用域 一、名称空间 名称空间:变量的创建其实就是在内存中开辟了一个新的空间。但是我们一直在回避变量名的存储,其实在内存中有一块内存存储变量名与变量间的绑定关系的空间,而这个空间称为名称空间。 1.1 内置名称空间 内置名称空间是 python解释器独有的,Python解释器启动的时候py 阅读全文
posted @ 2019-08-09 21:37 RandySun 阅读(357) 评论(0) 推荐(0)
摘要:函数对象 函数是第一类对象,即函数可以被当做数据处理。 结果: 3107559252992 func from 一、函数对象的四大功能 1.1 引用 变量名可以被引用,函数名也可被引用 func可以加()调用,那么f也可以加()调用 结果: 1 func from 1.2 可以当容器类型的元素 结果 阅读全文
posted @ 2019-08-09 21:34 RandySun 阅读(296) 评论(0) 推荐(0)
摘要:可变长参数 可变长参数:指的是在调用函数时,传入的参数个数可以不固定 调用函数时,传值的方式无非两种,一种是位置实参,另一种是关键字实参,因此形参也必须得有两种解决方法,以此来分别接收溢出的位置实参( )与关键字实参( ) 一、可变长实参之 结果: ('a', 1, 3) 1 二、可变长形参之 形参 阅读全文
posted @ 2019-08-09 21:33 RandySun 阅读(215) 评论(0) 推荐(0)
摘要:函数 一、什么是函数 ​ 假设现在你是下水道工,如果你事先准备好你的工具箱,等你接到修理下水道的工作的时候,你直接把你的工具箱拿过去直接使用就行了,而不需要临时准备锤子啥的。 ​ 在程序中,函数就是具备某一功能的工具,事先将工具准备好就是函数的定义,遇到应用场景拿来就用就是函数的调用,所以需要注意的 阅读全文
posted @ 2019-08-08 21:26 RandySun 阅读(199) 评论(0) 推荐(0)
摘要:文件高级应用 一、可读与可写 r + t or r+ :可读,可写 w + t or w+: 可读, 可写 a + t or a+: 可读, 可写 True True True True True True 二、 文件内指针移动 假设我们需要在文件内容中间的某一行增加内容,如果使用基础的r/w/a模 阅读全文
posted @ 2019-08-08 21:25 RandySun 阅读(214) 评论(0) 推荐(0)
摘要:文件的三种打开模式 文件操作的基础模式有三种(默认的操作模式为r模式): r模式为read w模式为write a模式为append 文件读写内容的格式有两种(默认的读写内容的模式为b模式): t模式为text b模式为bytes 需要注意的是:t、b这两种模式均不能单独使用,都需要与r/w/a之一 阅读全文
posted @ 2019-08-07 19:56 RandySun 阅读(1423) 评论(0) 推荐(0)
摘要:字符编码 一、文本编辑器存取文件的原理 1. 打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放与内存中的,断电后数据丢失。 2. 要想永久保存,需要点击保存按钮:编辑器把内存的数据刷到了硬盘上。 3. 在我们编写一个py文件(没有执行),跟编写其他文件没有任何区别, 阅读全文
posted @ 2019-08-07 19:55 RandySun 阅读(197) 评论(0) 推荐(0)
摘要:异常 一、什么是异常 异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下 1. 1 语法异常 注:语法错误,根本是过不了python解释器的语法检测,必须在程序执行前就改正 1. 2 逻 阅读全文
posted @ 2019-08-06 16:56 RandySun 阅读(256) 评论(0) 推荐(0)
摘要:Python深浅拷贝 在python中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋给另一个变量的时候,python并没有拷贝这个对象,而只是拷贝了这个对象的引用 针对该列表 一般有三种方法,分别为:拷贝(赋值)、浅拷贝、深拷贝 注意: 拷贝/浅拷贝/深拷贝都是针对可变类型数据而言的 ,i 阅读全文
posted @ 2019-08-06 16:55 RandySun 阅读(173) 评论(0) 推荐(0)
摘要:数据类型分类 一、按存值个数 存一个值|存多个值 : :|: : 整型、浮点型、字符串|列表、元组、字典、集合 二、按无序or有序(有索引) 无序|有序 : :|: : 字典、集合|字符串、列表、元组 三、可变 or 不可变 可变|不可变 : :|: : 列表、字典、集合|整型、浮点型、字符串、元组 阅读全文
posted @ 2019-08-06 14:20 RandySun 阅读(165) 评论(0) 推荐(0)
摘要:集合类型内置方法 一、作用 ​ 就是存储一堆元素的东西, 容器类型数据 二、定义方式 以{}用逗号隔开不可变数据类型(重复的元素会去掉),注意当 s = {} 定义时,他是是字典,不是集合,定义空集合必须得用set(),打印顺序随机 结果: {1, 2, 'a', 'c'} 三、内置方法 1. 长度 阅读全文
posted @ 2019-08-05 21:59 RandySun 阅读(119) 评论(0) 推荐(0)
摘要:字典数据类型内置方法 一、作用 给值添加描述信息作用 二、定义方式 使用{}一逗号隔开加入键值对key,value,key为不可变类型(int,float,str,tup,bool)且==key不可重复== 结果: {'name': 'laowang', 'age': 18, 'height': 1 阅读全文
posted @ 2019-08-05 21:23 RandySun 阅读(186) 评论(0) 推荐(0)
摘要:元组数据类型内置方法 元组是不可变的列表,即元组的值不可更改,因此元组一般只用于只存不取的需求。也因此元组可以被列表取代掉,所以元组相比较列表使用的很少。元组相比较列表的优点为:列表的值修改后,列表的结构将会发生改变,而元组只需要存储,因此列表在某种程度上而言需要占用更多的内存。但是目前工业上内存已 阅读全文
posted @ 2019-08-05 18:59 RandySun 阅读(219) 评论(0) 推荐(0)
摘要:列表类型内置方法(list) 一、作用: 用来存放多个值,如多个爱好,多门课程等 二、定义方式 结果: ['play', 'swimming', 'dancing'] ['r', 'a', 'n', 'd', 'y', 's', 'u', 'n'] 三、常用内置方法 ​ 主要内置方法 1. 索引取值 阅读全文
posted @ 2019-08-05 18:35 RandySun 阅读(235) 评论(0) 推荐(0)
摘要:使用Counter进行计数统计 想必大家对计数统计都不陌生吧!,简单的说就是统计某一项出现的次数。实际应用中很多需求都需要用到这个模型,如检测样本中某一值出现的次数、日志分析某一消息出现的频率分析文件中相同字符串出现的概率等。这类似的需求有很多种实现方法。我们逐一来看一下使用不同数据结构是的实现方式 阅读全文
posted @ 2019-08-02 23:58 RandySun 阅读(1657) 评论(0) 推荐(0)
摘要:一、字符串内置方法(str) 1.用途:描述性质的东西,如人的名字、单个爱好、地址、国家等 2.定义:使用''、""、''''''、""""""包裹的的一串字符 u'unicode': unicode编码的字符串 b'101': 二进制编码的字符串 r'\n': 原生字符串,也就是说'\n'这是普通 阅读全文
posted @ 2019-08-02 19:07 RandySun 阅读(215) 评论(0) 推荐(0)
摘要:数字类型内置方法 整型和浮点型统称为数字类型 一、整型内置方法(int) 1. 用途:年龄、号码等 2. 定义方式:可以使用int()方法将纯数字的字符串转为十进制类型(字符串中的纯数字不能出现‘1.1’,会报错),或者int()方法将纯数字转为十进制类型和直接赋值; eg: 3. 常用操作+内置方 阅读全文
posted @ 2019-08-02 19:06 RandySun 阅读(183) 评论(0) 推荐(0)
摘要:流程控制之for循环 一、语法 有了骚气的while循环,为什么还满足不了那个需求呢,为什么还需要for ,看看下面的问题,给出一个列表,要取出列表里面的所有数据取出来,该怎么做呢,下面看看while如何实现: eg(while): python nums_list = [1, 2, 3, 4] n 阅读全文
posted @ 2019-08-01 19:13 RandySun 阅读(169) 评论(0) 推荐(0)
摘要:流程控制之while循坏 一、语法 循环就是一个重复的过程,我们人需要重复干一个活,人岂不是要累死啊,而且还是那么…..的枯燥乏味,向我这样要的小年轻,不骚里骚气的行吗?那岂不是白白流浪了这么多年头,所以说呢要合理利用工具和资源,那么就不得不提及这个人笨重的大家伙,那就是传说中的神奇——计算机,利用 阅读全文
posted @ 2019-08-01 19:12 RandySun 阅读(269) 评论(0) 推荐(0)