摘要:1.补充内置函数 2.反射 什么是? 通过字符串操作类或者对象的属性 hasattri(a,"b") 判断能否访问到a.b setattri(a,"b",c)设置a.b=c 3.自定义内置方法定制类的功能 对象被打印时自动触发__str__ __del__用在回收应用程序对象时候顺便把占的操作系统的
阅读全文
摘要:1.封装 什么是? 封:明确地把属性隐藏起来 ,对外隐藏,对内开放 申请名称空间,往里面装入一系列名字 /属性(类比 类 和对象 只是装的概念) 为什么要用? __init__往对象里丢属性 封装数据属性: 定义属性的目的是给类的外部使用者用的 隐藏属性目的是为了不让用户直接使用,如果想用的话,需要
阅读全文
摘要:1.组合 什么是? 一个类的对象具备某一个属性,该属性值属于另一个类的对象,这样就可以引用 为何用: 解决类与类之间代码冗余问题 如何用? 2.菱形继承 单继承:一个个往父类上查找 菱形:一个子类继承多个父类,多个父类最终继承同一个类,新式类广度优先,一个个分支找,到最后一个不找了 经典类广度优先
阅读全文
摘要:对象整合了操作数据的方法 1.init方法 调用类时自动触发,为对象初始化自己独有的特征 class people: def __init__(self,name,age,sex): self.name=name self.age=age self.sex=sex def eat(self) sel
阅读全文
摘要:面向过程:核心是过程,解决问题的步骤,先干嘛后干嘛,机械流水线 复杂问题流程化简单化但扩展性差 面向对象:核心是对象,是特征与对象的集合体,基于该思想编写程序,就好比上帝造世界,上帝式的思维方式 扩展性强,但编程复杂度较高 类: 一系列对象相似的特征与技能的结合体 站的角度不同,总结出的类也不同 现
阅读全文
摘要:一.hash算法 什么是hash? 类似工厂加工的过程,传bytes串,经过运算返回字符 hash相当于工厂,传给hash算法的内容是原材料,hash值为产品 为何用hash? hash三大特性: 1.传入的内容一样,得到的hash值也必定一样 2.只要hash算法固定,hash值的长度一样,不应该
阅读全文
摘要:一.序列化概念 什么是序列化? 内存中的数据结构转成中间格式(json(所有编程语言通用)和pickle)存储到硬盘或基于网络状态 反序列化: 硬盘网络传来的数据格式转换成内存的数据结构 为什么 1.可以保存某一时间点的程序的运行状态 2.实现数据的跨平台交互 py和java的配合 json:优点是
阅读全文
摘要:面向过程编程 什么是过程: 解决问题的步骤和方法,基于该思想编程好比是设计流水线 优点:复杂的过程简单化 缺点:可扩展性差 牵一发而动全身 注册功能 1.接受用户输入 2.对用户输入进行合法性校验 def check_user(): def check_pw(): 3.写入文件 def insert
阅读全文
摘要:一.包 1.包 含有--init--.py的文件夹 是模块的一种形式 本质是一个文件夹(用来存放文件,包内所有的文件都是用来被导入的) import 包 包.名字 往包的init里加名字 导入方式: 绝对导入:相对于执行文件所在的文件夹 相对导入:相对于当前被导入的文件(只能用于模块之间的互相导入)
阅读全文
摘要:一、生成器 1、什么是生成器 在函数内但凡出现yield关键字,再调用函数就不会执行函数体代码,会返回一个值,该值称之为生成器,生成器本质就是迭代器 2、为什么要有生成器 生成器是一种自定义迭代器的方式 注: 生成器在刚刚生成时不执行里面任何代码 总结yield的功能 1、提供一种自定义迭代器的方式
阅读全文
摘要:一、函数递归 什么是函数递归: 函数递归调用是一种特殊的嵌套调用,在调用一个函数的过程中,又直接或间接地调用了该函数本身。 其中,函数的递归有明确的结束条件,不能无限制的调用,否则会撑破内存,在Python中限定递归最多调用1000层。 1000层这个值是大概的数值,这个数值可以通过Python内置
阅读全文
摘要:一、有参装饰器 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 import time current_user={'user
阅读全文
摘要:一、闭包函数 什么是闭包函数? 闭:函数是一个内部函数 包;指的是该函数包含对外部作用域(非全局作用域)名字的引用。 给函数传值的方式有两种: 1、使用参数直接给函数传值 2、包给函数 1 2 3 4 5 6 def outter(x): def inner(): print(x) return i
阅读全文
摘要:一、函数是对象 函数是第一类对象的含义是函数可以被当作数据处理 二、函数的嵌套定义 def f1(): def f2(): print('from f2') f2()f1() 三、名称空间与作用域 1.名称空间namespace 存放名字与值绑定关系的地方 2、名称空间分为三大类 内置名称空间: 作
阅读全文
摘要:一、函数的返回值 1、什么是返回值返回值是一个函数的处理结果, 2、为什么要有返回值如果我们需要在程序中拿到函数的处理结果做进一步的处理,则需要函数必须有返回值 3、函数的返回值的应用函数的返回值用return去定义格式为:return 值 注意:1、return是一个函数结束的标志,函数内可以有多
阅读全文
摘要:一、文件操作 1、r+t:可读可写 2、w+t:可写可读 3、a+t:可追加写、可读 4、f.seek(offset,whence) offset代表文件的指针的偏移量,单位是字节byteswhence代表参考物,有三个取值0:参照文件的开沟1:参照当前文件指针所在位置2: 参照文件末尾ps:快速移
阅读全文
摘要:一、什么是文件 文件是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位 文件的操作核心就:读、写 即我们只需要对于进行读写操作,就是对操作系统发起请求,然后由操作系统将用户或者应用程序对文件的读写操作转换成具体的硬盘指令(比如控制盘片转动,控制机械手臂移动来读写数据) 二、为什么要有文件 因为内
阅读全文
摘要:二.字符编码 基础知识: 文本编辑器存取文件原理与py执行原理异同: 存/写:进入文本编辑器 写内容 保存后 内存数据刷到硬盘 取/读:进入文本编辑器 找到内容 从硬盘读到内存 notepad把文件内容打印到屏幕上(py启动解释器,把py当作普通文件读到内存,最后识别语法,执行) 你往文本编辑里写汉
阅读全文
摘要:一.集合 1.定义 s=set() 2.特点 每个元素必须是不可变类型,但集合本身是可变类型的,有add和remove等功能 3.用途 去重(原理:for循环if判断元素是否已存在,不存在则追加) 关系运算 4.操作 并集,交集,差集 s1>s2 表示s1包含s2
阅读全文