摘要: 1. 多继承 继承: x是一种y的时候.可以使用继承关系. "is a" 一个类同时继承多个类(python, c++) 孙悟空是一种猴子, 还是一种神仙2. 经典类的MRO 通过数型结构的深度优先遍历 一条道走到黑(从左往右)3. 新式类的MRO(重点, 难点) C3算法 先拆分 再合并 第一项的 阅读全文
posted @ 2018-11-14 21:53 EuanXu 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 1.约束(抛出异常;写抽象类)(难点) 约束是对类的约束 1.提取父类.然后在父类中定义好方法.这个方法只需要抛出一个异常,子类必须重写这个方法,否则访问就会报错。 2. 使用元类来描述父类,在元类中给出一个抽象方法. 这样子类就不得不给出抽象方法的具体实现,也可以起到约束的效果. 1.抛出异常 N 阅读全文
posted @ 2018-11-12 17:18 EuanXu 阅读(120) 评论(0) 推荐(0) 编辑
摘要: import masterlst = ["akl", "obm"]for i, item in enumerate(lst): print(i,item)while 1: num = input('输入') if num == '0': master.akl() if num == '1': mas 阅读全文
posted @ 2018-11-09 22:11 EuanXu 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 一、类与类之间的关系 1.依赖关系 在方法中给方法传递一个对象。此时类与类的关系是最轻的 练习: class DaXiang(): def open(self, thing): print('大象') thing.op() print('打开%s' % thing.name) def zhuang( 阅读全文
posted @ 2018-11-08 20:27 EuanXu 阅读(157) 评论(0) 推荐(0) 编辑
摘要: ### 成员 ### 一、变量: 1.实例变量 : 2.类变量 : 直接写在类下面的叫类变量; 直接使用类名进行访问; 把对象中的共性的属性提取出来 类变量的修改只能类名来完成; 练习 class Person(): country = '中国' # 直接写在类下面的叫类变量; def __init 阅读全文
posted @ 2018-11-07 15:05 EuanXu 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 1.面向对象和面向过程 面向过程: 以我为中心. 按照事物的发展"流程". 面向对象: 以对象为中心. 万事万物皆为对象(object)2.如何编写面向对象程序(重点)先创建类: 归类. 对某些事物进行总结. 相当于图纸 使用类可以创建对象: class 类名(object) def __init_ 阅读全文
posted @ 2018-11-06 19:01 EuanXu 阅读(164) 评论(0) 推荐(0) 编辑
摘要: python内置函数图:https://www.processon.com/mindmap/5bdc30b9e4b0e4521338ce35# # # lambda() #匿名函数# ### 练习:# n = lambda a,b: a+b# print(n(2,3))## # 用 lambda 计 阅读全文
posted @ 2018-11-05 22:21 EuanXu 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 今日主要内容(重要) 迭代器 __iter__() 获取迭代器 __next__() 下一个 生成器 本质就是迭代器 两种方式写生成器 1. 生成器函数 2. 生成器表达式 生成器函数 函数内部有yield. yield返回 -> return yield可以把函数分段执行 生成器函数被调用的时候. 阅读全文
posted @ 2018-11-01 21:39 EuanXu 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 1. 第一类对象, 函数名的使用 函数名就是变量名, 函数名存储的是函数的内存地址 变量的命名规范: 1. 由数字, 字母, 下划线组成 2. 不能是数字开头, 更不能是纯数字 3. 不能用关键字 4. 不要太长 5. 要有意义 6. 不要用中文 7. 区分大小写 8. 驼峰或者下滑线 代理模式: 阅读全文
posted @ 2018-10-31 21:13 EuanXu 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 今日所学内容:# 位置参数 > *args > ,默认值参数 > **kwargsdef yana(*kind): print(kind)yana('黑兰州','飞天兰州','吉祥兰州')def yanb(**kind): print(kind)yanb(yan1='黑兰州',yan2='飞天兰州' 阅读全文
posted @ 2018-10-30 21:49 EuanXu 阅读(148) 评论(0) 推荐(0) 编辑